SDK API Guide  Version 6.5.20
field.h
Go to the documentation of this file.
1 /*
2  * $Id: $
3  *
4  * $Copyright: (c) 2020 Broadcom.
5  * Broadcom Proprietary and Confidential. All rights reserved.$
6  *
7  * DO NOT EDIT THIS FILE!
8  * This file is auto-generated.
9  * Edits to this file will be lost when it is regenerated.
10  */
11 
12 #ifndef __BCM_FIELD_H__
13 #define __BCM_FIELD_H__
14 
19 #include <bcm/types.h>
20 #include <sal/core/libc.h>
21 #include <shared/field.h>
22 #include <bcm/policer.h>
23 #include <bcm/port.h>
24 #include <bcm/rx.h>
25 #include <bcm/flowtracker.h>
26 #include <bcm/subport.h>
27 
29 #define BCM_FIELD_ENTRY_PRIO_HIGHEST (0x7fffffff)
31 #define BCM_FIELD_ENTRY_PRIO_DONT_CARE BCM_FIELD_ENTRY_PRIO_LOWEST
32 #define BCM_FIELD_ENTRY_PRIO_LOWEST (0)
36 #define BCM_FIELD_REPLACE_VLAN_PRIORITY 0
47 #define BCM_FIELD_REPLACE_VLAN_PRIORITY_USE_INTERNAL_CFI 1
57 #define BCM_FIELD_REPLACE_VLAN_PRIORITY_FROM_INT_PRIO_AND_CNG 2
65 #define BCM_FIELD_ENTRY_PRIO_DEFAULT BCM_FIELD_ENTRY_PRIO_LOWEST
68 #define BCM_FIELD_MAX_NAME_LEN 100
70 #define BCM_FIELD_NAME_TO_ID_MAX_IDS 10
74 #define BCM_FIELD_EXTRACTION_FLAG_CONSTANT (0x00000001)
78 #define BCM_FIELD_EXTRACTION_FLAG_DATA_FIELD (0x00000002)
83 #define BCM_FIELD_ENTRY_INVALID (-1)
87 #define BCM_FIELD_ENTRY_COPY_WITHOUT_STATS (1 << 0)
91 #define BCM_FIELD_ENTRY_CREATE_WITH_ID (1 << 0)
95 #define BCM_FIELD_ENTRY_CREATE_WITH_PRIORITY (1 << 1)
99 #define BCM_FIELD_ENTRY_CREATE_AS_DEFAULT (1 << 2)
105 #define BCM_FIELD_ENTRY_STATUS_INSTALLED (1 << 0)
109 #define BCM_FIELD_ENTRY_STATUS_ENABLED (1 << 1)
113 #define BCM_FIELD_ENTRY_STATUS_DEFAULT_ENTRY (1 << 2)
118 #define BCM_FIELD_ENTRY_STATUS_FLEXCTR_ATTACHED (1 << 3)
123 #define BCM_FIELD_ENTRY_STATUS_POLICER_ATTACHED (1 << 4)
127 #define BCM_FIELD_GBP_SRC_ID_NEQ_DST_ID (0x0)
131 #define BCM_FIELD_GBP_SRC_ID_EQ_DST_ID (0x1)
137 #define BCM_FIELD_SLICE_ALLOCATED (1 << 0)
142 #define BCM_FIELD_SLICE_MODE_SINGLE (1 << 1)
144 #define BCM_FIELD_SLICE_MODE_DOUBLE (1 << 2)
146 #define BCM_FIELD_SLICE_MODE_TRIPLE (1 << 3)
148 #define BCM_FIELD_SLICE_MODE_INTRADOUBLE (1 << 4)
150 #define BCM_FIELD_SLICE_PART_PRIMARY (1 << 5)
152 #define BCM_FIELD_SLICE_PART_SECONDARY (1 << 6)
154 #define BCM_FIELD_SLICE_PART_TERTIARY (1 << 7)
156 #define BCM_FIELD_SLICE_PART_PRIMARY_EXPANDED (1 << 8)
158 #define BCM_FIELD_SLICE_PART_SECONDARY_EXPANDED (1 << 9)
160 #define BCM_FIELD_SLICE_PART_TERTIARY_EXPANDED (1 << 10)
162 #define BCM_FIELD_SLICE_PART_INTRADOUBLE_EXPANDED (1 << 11)
165 #define BCM_FIELD_SLICE_MW_SUPPORTED (1 << 12)
167 #define BCM_FIELD_MAX_GROUPS_PER_SLICE 32
170 #define BCM_FIELD_STAGE_MAX_SLICES 18
174 typedef struct bcm_field_stage_slice_info_s {
179  int flags;
183  bcm_field_group_t slice_gid_list[BCM_FIELD_MAX_GROUPS_PER_SLICE];
186 
195 
196 #define BCM_FIELD_STAT_ACTION \
197 { \
198  "None", \
199  "Increment", \
200  "IncrementCancel", \
201  "Sample" \
202 }
203 
210 
212 #define BCM_FIELD_DATA_QUALIFIER_WITH_ID (1 << 0)
213 #define BCM_FIELD_DATA_QUALIFIER_REPLACE (1 << 1)
214 #define BCM_FIELD_DATA_QUALIFIER_OFFSET_IP4_OPTIONS_ADJUST (1 << 2)
215 #define BCM_FIELD_DATA_QUALIFIER_OFFSET_IP6_EXTENSIONS_ADJUST (1 << 3)
216 #define BCM_FIELD_DATA_QUALIFIER_OFFSET_GRE_OPTIONS_ADJUST (1 << 4)
217 #define BCM_FIELD_DATA_QUALIFIER_OFFSET_NEGATIVE (1 << 5)
220 #define BCM_FIELD_DATA_QUALIFIER_OFFSET_BIT_RES (1 << 6)
223 #define BCM_FIELD_DATA_QUALIFIER_LENGTH_BIT_RES (1 << 7)
226 #define BCM_FIELD_DATA_QUALIFIER_OFFSET_PREDEFINED (1 << 8)
229 #define BCM_FIELD_DATA_QUALIFIER_OFFSET_FLEX_HASH (1 << 9)
232 #define BCM_FIELD_DATA_QUALIFIER_STAGE_LOOKUP (1 << 10)
235 #define BCM_FIELD_DATA_QUALIFIER_TYPE_L2 (1 << 11)
237 #define BCM_FIELD_DATA_QUALIFIER_TYPE_IPV4 (1 << 12)
239 #define BCM_FIELD_DATA_QUALIFIER_TYPE_IPV6 (1 << 13)
241 #define BCM_FIELD_DATA_QUALIFIER_TYPE_MPLS (1 << 14)
243 #define BCM_FIELD_DATA_QUALIFIER_BIT_OFFSET_DNX_ORDER (1 << 15)
247 #define BCM_FIELD_DATA_FORMAT_VLAN_TAG_ANY (0xffff)
248 #define BCM_FIELD_DATA_FORMAT_VLAN_NO_TAG (1 << 0)
249 #define BCM_FIELD_DATA_FORMAT_VLAN_SINGLE_TAGGED (1 << 1)
250 #define BCM_FIELD_DATA_FORMAT_VLAN_DOUBLE_TAGGED (1 << 2)
251 
253 #define BCM_FIELD_DATA_FORMAT_L2_ANY (0xffff)
254 #define BCM_FIELD_DATA_FORMAT_L2_ETH_II (1 << 0)
255 #define BCM_FIELD_DATA_FORMAT_L2_SNAP (1 << 1)
256 #define BCM_FIELD_DATA_FORMAT_L2_LLC (1 << 2)
257 
259 #define BCM_FIELD_DATA_FORMAT_IP_ANY (0xffff)
260 #define BCM_FIELD_DATA_FORMAT_IP_NONE (1 << 0)
261 #define BCM_FIELD_DATA_FORMAT_IP4 (1 << 1)
262 #define BCM_FIELD_DATA_FORMAT_IP6 (1 << 2)
263 #define BCM_FIELD_DATA_FORMAT_IP4_WITH_OPTIONS (1 << 3)
264 #define BCM_FIELD_DATA_FORMAT_IP6_WITH_OPTIONS (1 << 4)
265 
267 #define BCM_FIELD_DATA_FORMAT_MPLS_ANY (0xffff)
268 #define BCM_FIELD_DATA_FORMAT_MPLS_ONE_LABEL (1 << 0)
269 #define BCM_FIELD_DATA_FORMAT_MPLS_TWO_LABELS (1 << 1)
270 #define BCM_FIELD_DATA_FORMAT_MPLS_THREE_LABELS (1 << 2)
271 #define BCM_FIELD_DATA_FORMAT_MPLS_FOUR_LABELS (1 << 3)
272 #define BCM_FIELD_DATA_FORMAT_MPLS_FIVE_LABELS (1 << 4)
273 
275 #define BCM_FIELD_DATA_FORMAT_FIBRE_CHAN_ANY (0xffff)
276 #define BCM_FIELD_DATA_FORMAT_FIBRE_CHAN (1 << 0)
278 #define BCM_FIELD_DATA_FORMAT_FIBRE_CHAN_ENCAP (1 << 1)
279 #define BCM_FIELD_DATA_FORMAT_FIBRE_CHAN_VIRTUAL (1 << 2)
281 #define BCM_FIELD_DATA_FORMAT_FIBRE_CHAN_ROUTED (1 << 3)
285 #define BCM_FIELD_DATA_FORMAT_TUNNEL_ANY (0xffff)
286 #define BCM_FIELD_DATA_FORMAT_TUNNEL_NONE (1 << 0)
287 #define BCM_FIELD_DATA_FORMAT_TUNNEL_IP_IN_IP (1 << 1)
288 #define BCM_FIELD_DATA_FORMAT_TUNNEL_GRE (1 << 2)
289 #define BCM_FIELD_DATA_FORMAT_TUNNEL_MPLS (1 << 3)
290 #define BCM_FIELD_DATA_FORMAT_TUNNEL_FCOE (1 << 4)
293 #define BCM_FIELD_DATA_FORMAT_TUNNEL_FCOE_INIT (1 << 5)
298 #define BCM_FIELD_DATA_FORMAT_F_MASK (0x3ff)
299 #define BCM_FIELD_DATA_FORMAT_F_ENCAP_STACK (1 << 0)
302 #define BCM_FIELD_DATA_FORMAT_F_NO_ENCAP_STACK (1 << 1)
305 #define BCM_FIELD_DATA_FORMAT_F_VNTAG (1 << 2)
308 #define BCM_FIELD_DATA_FORMAT_F_NO_VNTAG (1 << 3)
311 #define BCM_FIELD_DATA_FORMAT_F_CNTAG (1 << 4)
314 #define BCM_FIELD_DATA_FORMAT_F_NO_CNTAG (1 << 5)
317 #define BCM_FIELD_DATA_FORMAT_F_ETAG (1 << 6)
320 #define BCM_FIELD_DATA_FORMAT_F_NO_ETAG (1 << 7)
323 #define BCM_FIELD_DATA_FORMAT_F_ICNM (1 << 8)
326 #define BCM_FIELD_DATA_FORMAT_F_NO_ICNM (1 << 9)
331 typedef enum bcm_field_data_offset_base_e {
371 
372 #define BCM_FIELD_DATA_OFFSET_BASE \
373 { \
374  "bcmFieldDataOffsetBasePacketStart", \
375  "bcmFieldDataOffsetBaseOuterL3Header", \
376  "bcmFieldDataOffsetBaseInnerL3Header", \
377  "bcmFieldDataOffsetBaseOuterL4Header", \
378  "bcmFieldDataOffsetBaseInnerL4Header", \
379  "bcmFieldDataOffsetBaseHigigHeader", \
380  "bcmFieldDataOffsetBaseHigig2Header", \
381  "bcmFieldDataOffsetBaseFcoeHeader", \
382  "bcmFieldDataOffsetBaseDeprecated8", \
383  "bcmFieldDataOffsetBaseL2Header", \
384  "bcmFieldDataOffsetBaseFirstHeader", \
385  "bcmFieldDataOffsetBaseSecondHeader", \
386  "bcmFieldDataOffsetBaseThirdHeader", \
387  "bcmFieldDataOffsetBaseMplsLabel1Header", \
388  "bcmFieldDataOffsetBaseMplsLabel2Header", \
389  "bcmFieldDataOffsetBaseMplsLabel3Header", \
390  "bcmFieldDataOffsetBaseInnerL2Header", \
391  "bcmFieldDataOffsetBaseTrillHeader", \
392  "bcmFieldDataOffsetBaseFourthHeader", \
393  "bcmFieldDataOffsetBaseForwardingHeader", \
394  "bcmFieldDataOffsetBaseNextForwardingHeader", \
395  "bcmFieldDataOffsetBaseTrillPayload" \
396 }
397 
409 
420 
439 
441 #define BCM_FIELD_COLOR_PRESERVE 0
442 #define BCM_FIELD_COLOR_GREEN 1
443 #define BCM_FIELD_COLOR_YELLOW 2
444 #define BCM_FIELD_COLOR_RED 3
445 #define BCM_FIELD_COLOR_BLACK 4
446 
455 
456 #define BCM_FIELD_STAT_OAM_LM_INDEX_STRINGS \
457 { \
458  "0", \
459  "1", \
460  "2", \
461  "Invalid" \
462 }
463 
465 #define BCM_FIELD_IPFLAGS_MF 0x1
466 #define BCM_FIELD_IPFLAGS_DF 0x2
467 #define BCM_FIELD_IPFLAGS_RF 0x4
468 #define BCM_FIELD_IPFLAGS_MASK 0x7
471 #define BCM_FIELD_TCPCONTROL_FIN 0x01
472 #define BCM_FIELD_TCPCONTROL_SYN 0x02
473 #define BCM_FIELD_TCPCONTROL_RST 0x04
474 #define BCM_FIELD_TCPCONTROL_PSH 0x08
475 #define BCM_FIELD_TCPCONTROL_ACK 0x10
476 #define BCM_FIELD_TCPCONTROL_URG 0x20
477 #define BCM_FIELD_TCPCONTROL_R40 0x40
478 #define BCM_FIELD_TCPCONTROL_R80 0x80
479 #define BCM_FIELD_TCPCONTROL_MASK 0x3f
482 #define BCM_FIELD_L2MAC_DMAC_MATCH_DIP 0x0001
486 #define BCM_FIELD_L2MAC_SMAC_LT_DMAC 0x0002
489 #define BCM_FIELD_L2MAC_SMAC_EQ_DMAC 0x0004
492 #define BCM_FIELD_L2MAC_BCAST_DMAC 0x0008
494 #define BCM_FIELD_L2MAC_MCAST_DMAC 0x0010
496 #define BCM_FIELD_L2MAC_IPMCAST_DMAC 0x0020
502 #define BCM_FIELD_L2MAC_ZERO_SMAC 0x0040
504 #define BCM_FIELD_L2MAC_MCAST_SMAC 0x0080
508 #define BCM_FIELD_IP_HDR_OFFSET_ZERO 0x0001
509 #define BCM_FIELD_IP_HDR_FLAGS_MF 0x0002
510 #define BCM_FIELD_IP_CHECKSUM_OK 0x0004
511 #define BCM_FIELD_IP_VERSION_ERR 0x0008
513 #define BCM_FIELD_IP_HDR_SIP_LT_DIP 0x0010
516 #define BCM_FIELD_IP_HDR_SIP_EQ_DIP 0x0020
519 #define BCM_FIELD_IP_HDR_BCAST_DIP 0x0040
521 #define BCM_FIELD_IP_HDR_MCAST_DIP 0x0080
523 #define BCM_FIELD_IP_HDR_RESERVED_MCAST_DIP 0x0100
525 #define BCM_FIELD_IP_HDR_BFD_LOOPBACK_DIP 0x0200
528 #define BCM_FIELD_IP_HDR_FRAG_FLAGS_OFFSET_ONE 0x0400
530 #define BCM_FIELD_IP_ERROR_DIP 0x0800
532 #define BCM_FIELD_IP_ERROR_SIP 0x1000
534 #define BCM_FIELD_IP_SPECIAL_DIP 0x2000
536 #define BCM_FIELD_IP_SMALL_PKT 0x4000
537 #define BCM_FIELD_IP_BIG_PKT 0x8000
538 #define BCM_FIELD_IP_VERSION_V4 0x010000
539 #define BCM_FIELD_IP_VERSION_V6 0x020000
540 #define BCM_FIELD_IP_HDR_FRAG_FLAGS_OFFSET_NON_ZERO 0x040000
544 #define BCM_FIELD_L4_HDR_SRCPORT_LT_1024 0x0001
546 #define BCM_FIELD_L4_HDR_SRCPORT_EQ_DSTPORT 0x0002
549 #define BCM_FIELD_L4_TCP_SEQUENCE_ZERO 0x0004
552 #define BCM_FIELD_L2_LEARN_COMMANDS_DO_NOT_LEARN 0x0001
553 #define BCM_FIELD_L2_LEARN_COMMANDS_LEARN_MACSA 0x0002
554 #define BCM_FIELD_L2_LEARN_COMMANDS_RELEARN_MACSA 0x0004
555 #define BCM_FIELD_L2_LEARN_COMMANDS_UNRESOLVED_MACSA 0x0008
559 #define BCM_FIELD_TUNNEL_TERM 0x0001
561 #define BCM_FIELD_TUNNEL_TERM_L3 0x0002
562 #define BCM_FIELD_TUNNEL_TERM_L2 0x0004
563 #define BCM_FIELD_TUNNEL_TERM_TRIGGER_SECOND_PASS 0x0008
568 #define BCM_FIELD_LOOPBACK_VISIBILITY_PKT 0x0001
570 #define BCM_FIELD_LOOPBACK_ROUTED_PKT 0x0002
572 #define BCM_FIELD_LOOPBACK_RECIRCLE_HDR_PKT 0x0004
577 #define BCM_FIELD_PKT_STATUS_MCASTKNOWN 0x0001
579 #define BCM_FIELD_PKT_STATUS_MCASTUNKNOWN 0x0002
581 #define BCM_FIELD_PKT_STATUS_UCASTUNKNOWN 0x0004
583 #define BCM_FIELD_PKT_STATUS_BCAST 0x0008
586 #define BCM_FIELD_FORWARDING_STATUS_L2_SWITCHED 0x0001
587 #define BCM_FIELD_FORWARDING_STATUS_L3_UNICAST_ROUTED 0x0002
589 #define BCM_FIELD_FORWARDING_STATUS_IPMC_ROUTED 0x0004
595 #define BCM_FIELD_CML_FLAG_DROP 0x0001
596 #define BCM_FIELD_CML_FLAG_COPY_TO_CPU 0x0002
598 #define BCM_FIELD_CML_FLAG_LEARN 0x0004
601 #define BCM_FIELD_FORWARDING_ELIGIBLE_L3_UNICAST_ROUTE 0x0001
603 #define BCM_FIELD_FORWARDING_ELIGIBLE_IPMC_ROUTE 0x0002
605 #define BCM_FIELD_FORWARDING_ELIGIBLE_L2_SWITCH 0x0004
607 #define BCM_FIELD_FORWARDING_ELIGIBLE_IPMC_FALLBACK_TO_L2_SWITCH 0x0008
612 #define BCM_FIELD_L3_CHECK_GOOD_L3_UNICAST_ROUTE_PKT 0x0001
616 #define BCM_FIELD_L3_CHECK_GOOD_IPMC_PKT 0x0002
619 #define BCM_FIELD_L3_CHECK_PIM_FAIL 0x0004
623 #define BCM_FIELD_MIRROR_PKT_TYPE_INGRESS 0x0001
624 #define BCM_FIELD_MIRROR_PKT_TYPE_COPY 0x0002
625 #define BCM_FIELD_MIRROR_PKT_TYPE_COPY_TRUNCATE 0x0004
629 #define BCM_FIELD_PTP_MATCH_ETHERTYPE_OR_UDP_DEST_PORT 0x0001
632 #define BCM_FIELD_PTP_MATCH_UDP_DEST_PORT 0x0002
639 #define BCM_FIELD_VLAN_FORMAT_UNTAGGED 0x0
641 #define BCM_FIELD_VLAN_FORMAT_OUTER_TAGGED 0x1
642 #define BCM_FIELD_VLAN_FORMAT_INNER_TAGGED 0x2
643 #define BCM_FIELD_VLAN_FORMAT_OUTER_TAGGED_VID_ZERO 0x4
645 #define BCM_FIELD_VLAN_FORMAT_INNER_TAGGED_VID_ZERO 0x8
649 #define BCM_FIELD_PKT_RES_UNKNOWN 0x0
650 #define BCM_FIELD_PKT_RES_CONTROL 0x1
652 #define BCM_FIELD_PKT_RES_BPDU 0x2
653 #define BCM_FIELD_PKT_RES_L2BC 0x3
654 #define BCM_FIELD_PKT_RES_L2UC 0x4
655 #define BCM_FIELD_PKT_RES_L2UNKNOWN 0x5
656 #define BCM_FIELD_PKT_RES_L3MCUNKNOWN 0x6
657 #define BCM_FIELD_PKT_RES_L3MCKNOWN 0x7
658 #define BCM_FIELD_PKT_RES_L2MCKNOWN 0x8
659 #define BCM_FIELD_PKT_RES_L2MCUNKNOWN 0x9
660 #define BCM_FIELD_PKT_RES_L3UCKNOWN 0xa
661 #define BCM_FIELD_PKT_RES_L3UCUNKNOWN 0xb
662 #define BCM_FIELD_PKT_RES_MPLSKNOWN 0xc
663 #define BCM_FIELD_PKT_RES_MPLSL3KNOWN 0xd
664 #define BCM_FIELD_PKT_RES_MPLSL2KNOWN 0xe
665 #define BCM_FIELD_PKT_RES_MPLSUNKNOWN 0xf
666 #define BCM_FIELD_PKT_RES_MIMKNOWN 0x10
667 #define BCM_FIELD_PKT_RES_MIMUNKNOWN 0x11
668 #define BCM_FIELD_PKT_RES_TRILLKNOWN 0x12
669 #define BCM_FIELD_PKT_RES_TRILLUNKNOWN 0x13
670 #define BCM_FIELD_PKT_RES_NIVKNOWN 0x14
671 #define BCM_FIELD_PKT_RES_NIVUNKNOWN 0x15
672 #define BCM_FIELD_PKT_RES_OAM 0x16
674 #define BCM_FIELD_PKT_RES_BFD 0x17
675 #define BCM_FIELD_PKT_RES_ICNM 0x18
677 #define BCM_FIELD_PKT_RES_IEEE1588 0x19
678 #define BCM_FIELD_PKT_RES_L2GREKNOWN 0x1a
679 #define BCM_FIELD_PKT_RES_VXLANKNOWN 0x1b
680 #define BCM_FIELD_PKT_RES_FCOEKNOWN 0x1c
681 #define BCM_FIELD_PKT_RES_FCOEUNKNOWN 0x1d
682 #define BCM_FIELD_PKT_RES_MPLSMCKNOWN 0x1e
684 #define BCM_FIELD_PKT_RES_PIMBIDIRUNKNOWN 0x1f
686 #define BCM_FIELD_PKT_RES_L2_ANY 0x20
695 #define BCM_FIELD_PKT_RES_L2MC_ANY 0x21
702 #define BCM_FIELD_PKT_RES_TRILL_ANY 0x22
709 #define BCM_FIELD_PKT_RES_NIV_ANY 0x23
716 #define BCM_FIELD_PKT_RES_MPLS_ANY 0x24
726 #define BCM_FIELD_PKT_RES_MIM_ANY 0x25
733 #define BCM_FIELD_PKT_RES_FCOE_ANY 0x26
740 #define BCM_FIELD_PKT_RES_L3_ANY 0x27
749 #define BCM_FIELD_PKT_RES_LAST (BCM_FIELD_PKT_RES_L3_ANY)
754 #define BCM_FIELD_FWD_PKT_RES_MC 0x0
755 #define BCM_FIELD_FWD_PKT_RES_L3BC 0x1
756 #define BCM_FIELD_FWD_PKT_RES_L3UC 0x2
757 #define BCM_FIELD_FWD_PKT_RES_L2BC 0x4
758 #define BCM_FIELD_FWD_PKT_RES_L2UC 0x8
764 #define BCM_FIELD_VXLT_LOOKUP_STATUS_NO_HIT 0x0
765 #define BCM_FIELD_VXLT_LOOKUP_STATUS_HIT 0x1
767 #define BCM_FIELD_VXLT_LOOKUP_STATUS_FIRST_HIT 0x2
768 #define BCM_FIELD_VXLT_LOOKUP_STATUS_SECOND_HIT 0x4
774 #define BCM_FIELD_MPLS_FORWARDING_LABEL_ACTION_INVALID 0x0
775 #define BCM_FIELD_MPLS_FORWARDING_LABEL_ACTION_PHP 0x2
776 #define BCM_FIELD_MPLS_FORWARDING_LABEL_ACTION_SWAP 0x3
777 #define BCM_FIELD_MPLS_FORWARDING_LABEL_ACTION_POP 0x4
795 #define BCM_FIELD_MPLS_FORWARDING_LABEL_ACTION_POP_USE_L2_VPN 0x5
797 #define BCM_FIELD_MPLS_FORWARDING_LABEL_ACTION_POP_USE_L3_VPN 0x6
799 #define BCM_FIELD_MPLS_FORWARDING_LABEL_ACTION_POP_USE_ENTROPY 0x7
803 #define BCM_FIELD_INT_DO_NOT_ADD_STATISTICS 0x0
805 #define BCM_FIELD_INT_QUEUE_BUFFER 0x1
807 #define BCM_FIELD_INT_QUEUE_WATERMARK 0x2
809 #define BCM_FIELD_INT_POOL_BUFFER_AVAILABLE 0x3
811 #define BCM_FIELD_INT_MIN_BUFFER_AVAILABLE 0x4
819 #define BCM_FIELD_TRACE_EVENT_DO_NOT_MIRROR 0x0
821 #define BCM_FIELD_TRACE_EVENT_DO_NOT_COPY_TO_CPU 0x1
828 #define BCM_FIELD_EGRESS_OPR_DEFAULT 0x0
830 #define BCM_FIELD_EGRESS_OPR_RECIRCLE_HDR_ENABLE 0x1
832 #define BCM_FIELD_EGRESS_OPR_IFA_DELETE 0x2
835 #define BCM_FIELD_INT_CTRL_INSERT_IFA_RECORD 0x0001
836 #define BCM_FIELD_INT_CTRL_DELETE_IFA_TRACE 0x0002
839 #define BCM_FIELD_FIBRE_CHAN_ZONE_CHECK_NOT_DONE 0x0
841 #define BCM_FIELD_FIBRE_CHAN_ZONE_CHECK_ALLOW 0x1
842 #define BCM_FIELD_FIBRE_CHAN_ZONE_CHECK_MISS 0x2
843 #define BCM_FIELD_FIBRE_CHAN_ZONE_CHECK_DENY 0x3
846 #define BCM_FIELD_MHOPCODE_CONTROL 0
847 #define BCM_FIELD_MHOPCODE_UNICAST 1
848 #define BCM_FIELD_MHOPCODE_BROADCAST_DLF 2
849 #define BCM_FIELD_MHOPCODE_MULTICAST 3
850 #define BCM_FIELD_MHOPCODE_IPMULTICAST 4
851 #define BCM_FIELD_MHOPCODE_L2MULTICAST 5
852 
854 #define BCM_FIELD_USER_MAX_UDF_NUM 1
855 #define BCM_FIELD_USER_MAX_USER_NUM 3
856 #define BCM_FIELD_USER_NUM_UDFS 277
857 #define BCM_FIELD_USER_FIELD_SIZE 4
858 #define BCM_FIELD_USER_MAX_LENGTH (1 << 5)
861 #define BCM_FIELD_METER_PEAK 1
862 #define BCM_FIELD_METER_COMMITTED 2
863 
865 #define BCM_FIELD_METER_MODE_DEFAULT 0x0
866 #define BCM_FIELD_METER_MODE_FLOW 0x1
867 #define BCM_FIELD_METER_MODE_trTCM_COLOR_BLIND 0x2
868 #define BCM_FIELD_METER_MODE_trTCM_COLOR_AWARE 0x3
869 #define BCM_FIELD_METER_MODE_srTCM_COLOR_BLIND 0x6
870 #define BCM_FIELD_METER_MODE_srTCM_COLOR_AWARE 0x7
871 
873 #define BCM_FIELD_SPCP_MARK_MAPPED 0x01
874 #define BCM_FIELD_SPCP_MARK_USE_INNER_PCP 0x02
875 #define BCM_FIELD_SPCP_MARK_USE_OUTER_PCP 0x04
876 #define BCM_FIELD_SPCP_MARK_USE_PORT_DEFAULT 0x08
877 #define BCM_FIELD_SPCP_MARK_MASK 0x0f
878 #define BCM_FIELD_CPCP_MARK_MAPPED 0x10
879 #define BCM_FIELD_CPCP_MARK_USE_INNER_PCP 0x20
880 #define BCM_FIELD_CPCP_MARK_USE_OUTER_PCP 0x40
881 #define BCM_FIELD_CPCP_MARK_USE_PORT_DEFAULT 0x80
882 #define BCM_FIELD_CPCP_MARK_MASK 0xf0
883 
888 #define BCM_FIELD_TAG_AS_RECEIVED 0x01
889 #define BCM_FIELD_TAG_AS_NORMALIZED 0x02
890 #define BCM_FIELD_TAG_COPY 0x04
891 #define BCM_FIELD_TAG_REMOVE 0x08
892 #define BCM_FIELD_TAG_REPLACE 0x10
893 
905 #define BCM_FIELD_COUNTER_MODE_NO_NO 0x0000
906 #define BCM_FIELD_COUNTER_MODE_NO_YES 0x0001
907 #define BCM_FIELD_COUNTER_MODE_YES_NO 0x0002
908 #define BCM_FIELD_COUNTER_MODE_RED_NOTRED 0x0003
909 #define BCM_FIELD_COUNTER_MODE_GREEN_NOTGREEN 0x0004
910 #define BCM_FIELD_COUNTER_MODE_GREEN_RED 0x0005
911 #define BCM_FIELD_COUNTER_MODE_GREEN_YELLOW 0x0006
912 #define BCM_FIELD_COUNTER_MODE_RED_YELLOW 0x0007
913 #define BCM_FIELD_COUNTER_MODE_BYTES_PACKETS 0x0008
916 #define BCM_FIELD_COUNTER_MODE_GREEN 0x0010
917 #define BCM_FIELD_COUNTER_MODE_YELLOW 0x0020
918 #define BCM_FIELD_COUNTER_MODE_RED 0x0040
919 #define BCM_FIELD_COUNTER_MODE_ALL 0x0070
920 #define BCM_FIELD_COUNTER_MODE_PACKETS 0x0000
921 #define BCM_FIELD_COUNTER_MODE_BYTES 0x0100
922 #define BCM_FIELD_COUNTER_MODE_DEFAULT BCM_FIELD_COUNTER_MODE_NO_YES
923 
925 #define BCM_FIELD_MULTIPATH_HASH_DISABLE 0x0
926 #define BCM_FIELD_MULTIPATH_HASH_DIP 0x1
927 #define BCM_FIELD_MULTIPATH_HASH_SIP 0x2
928 #define BCM_FIELD_MULTIPATH_HASH_SIP_DIP 0x3
929 #define BCM_FIELD_MULTIPATH_HASH_DST_SRC_L4_DIP_SIP 0x4
930 #define BCM_FIELD_MULTIPATH_HASH_SRC_DST_L4_SIP_DIP 0x5
931 #define BCM_FIELD_MULTIPATH_HASH_SRC_L4_SIP 0x6
932 #define BCM_FIELD_MULTIPATH_HASH_DST_L4_DIP 0x7
933 
935 #define BCM_FIELD_FILTER_LAG 0x1
937 #define BCM_FIELD_FILTER_TAGGED 0x2
939 #define BCM_FIELD_FILTER_PORT_MASK 0x4
941 #define BCM_FIELD_FILTER_STP 0x8
943 #define BCM_FIELD_FILTER_EAP 0x10
945 #define BCM_FIELD_FILTER_INGRESS_VLAN 0x20
947 #define BCM_FIELD_FILTER_EGRESS_VLAN 0x40
949 #define BCM_FIELD_FILTER_SA 0x80
951 #define BCM_FIELD_FILTER_SA_DISABLED 0x100
952 #define BCM_FIELD_FILTER_BYPASS_ALL 0x200
953 #define BCM_FIELD_FILTER_ALL 0x3ff
954 
956 #define BCM_FIELD_USE_POLICER_RESULT_INGRESS 0x01
958 #define BCM_FIELD_USE_POLICER_RESULT_EGRESS 0x02
969 #define BCM_FIELD_POLICER_GLOBAL_METER_USE_STAGE_LOOKUP_ACTION 0x01
973 #define BCM_FIELD_HIGIG_DONOT_MODIFY 0x1
981 #define BCM_FIELD_HIGIG_DONOT_LEARN 0x2
985 #define BCM_FIELD_HIGIG_OFFLOAD_ENGINE_VXLT_NOT_ATTEMPTED 0x0
988 #define BCM_FIELD_HIGIG_OFFLOAD_ENGINE_VXLT_NOT_DONE 0x1
996 #define BCM_FIELD_HIGIG_OFFLOAD_ENGINE_VXLT_DONE 0x2
1003 #define BCM_FIELD_HIGIG_OFFLOAD_ENGINE_DEFERRED_DROP 0x01
1004 #define BCM_FIELD_HIGIG_OFFLOAD_ENGINE_DEFERRED_CHANGE_PKT_PRIORITY 0x02
1006 #define BCM_FIELD_HIGIG_OFFLOAD_ENGINE_DEFERRED_CHANGE_DSCP 0x04
1010 #define BCM_FIELD_HIGIG_LABEL_TYPE_HIGIGPLUS_OVERLAY 0x00
1012 #define BCM_FIELD_HIGIG_LABEL_TYPE_INGRESS_MODPORT 0x01
1016 #define BCM_FIELD_HIGIG_LABEL_TYPE_MIRROR_CLASSIFICATION_TAG 0x02
1022 #define BCM_FIELD_HIGIG_LABEL_TYPE_QTAG 0x03
1030 #define BCM_FIELD_HIGIG_PRESERVE_DSCP 0x1
1032 #define BCM_FIELD_HIGIG_PRESERVE_DOT1P 0x2
1037 #define BCM_FIELD_HIGIG_MIRROR 0x01
1043 #define BCM_FIELD_HIGIG3_SWITCH_GENERATED 0x0001
1046 #define BCM_FIELD_HIGIG3_LAG_FAILOVER 0x0002
1048 #define BCM_FIELD_HIGIG3_DO_NOT_LEARN 0x0004
1055 typedef enum bcm_field_header_format_extension_e {
1173 
1174 #define BCM_FIELD_HEADER_FORMAT_EXTENSION \
1175 { \
1176  "DontCare", \
1177  "Ftmh", \
1178  "IpUdpGtp1", \
1179  "IpUdpGtp2", \
1180  "Fcoe", \
1181  "MplsNonL4IPV4IsH3", \
1182  "MplsNonL4IPV6IsH3", \
1183  "MplsL4IPV4isH3", \
1184  "MplsL4IPV6isH3", \
1185  "MplsETHisH3", \
1186  "MplsNonL4IPV4isH4", \
1187  "MplsNonL4IPV6isH4", \
1188  "MplsL4IPV4isH4", \
1189  "MplsL4IPV6isH4", \
1190  "MplsNonL4IPV4IsAny", \
1191  "MplsNonL4IPV6IsAny", \
1192  "MplsAnyL4IPV4IsH3", \
1193  "MplsAnyL4IPV6IsH3", \
1194  "MplsNonL4IPV4isH5", \
1195  "MplsNonL4IPV6isH5", \
1196  "MplsAnyL4IPV4IsH5", \
1197  "MplsAnyL4IPV6IsH5", \
1198  "MplsETHisH4", \
1199  "MplsAnyEthIsH3H4", \
1200  "MplsAnyL4IPV4IsH4", \
1201  "MplsAnyL4IPV6IsH4", \
1202  "MplsL4IPV4isH5", \
1203  "MplsL4IPV6isH5" \
1204 }
1205 
1333 
1334 #define BCM_FIELD_HEADER_FORMAT \
1335 { \
1336  "L2", \
1337  "Ip4", \
1338  "Ip4AnyL2L3", \
1339  "Ip6", \
1340  "Ip6AnyL2L3", \
1341  "MplsLabel1", \
1342  "MplsLabel1AnyL2L3", \
1343  "MplsLabel2", \
1344  "MplsLabel2AnyL2L3", \
1345  "MplsLabel3", \
1346  "MplsLabel3AnyL2L3", \
1347  "Trill", \
1348  "EthEth", \
1349  "EthTrillEth", \
1350  "Ip4Ip4", \
1351  "Ip6Ip4", \
1352  "Ip4MplsLabel1", \
1353  "Ip4MplsLabel2", \
1354  "Ip4MplsLabel3", \
1355  "Ip6MplsLabel1", \
1356  "Ip6MplsLabel2", \
1357  "Ip6MplsLabel3", \
1358  "EthMplsLabel1", \
1359  "EthMplsLabel2", \
1360  "EthMplsLabel3", \
1361  "Ip4EthMplsLabel1", \
1362  "Ip4EthMplsLabel2", \
1363  "Ip4EthMplsLabel3", \
1364  "TrafficManagement", \
1365  "EthIp4Eth", \
1366  "FCoE", \
1367  "MplsAnyLabelAnyL2L3", \
1368  "AfterTunnelTerminatedNonL4IPV4IsH3", \
1369  "AfterTunnelTerminatedNonL4IPV6IsH3", \
1370  "AfterTunnelTerminatedL4IPV4IsH3", \
1371  "AfterTunnelTerminatedL4IPV6IsH3", \
1372  "AfterTunnelTerminatedEthIsH3", \
1373  "AfterTunnelTerminatedNonL4IPV4IsH4ETHisH3", \
1374  "AfterTunnelTerminatedNonL4IPV6IsH4ETHisH3", \
1375  "AfterTunnelTerminatedL4IPV4IsH4ETHisH3", \
1376  "AfterTunnelTerminatedL4IPV6IsH4ETHisH3", \
1377  "Mpls", \
1378  "Ip4Ip6", \
1379  "Ip6Ip6", \
1380  "FCoENoEncap" \
1381 }
1382 
1388  SHR_BITDCL w[_SHR_BITDCLSIZE(bcmFieldHeaderFormatCount)];
1390 
1391 #define BCM_FIELD_HEADER_FORMAT_SET_INIT(hfset) \
1392  sal_memset(&(hfset), 0, sizeof(bcm_field_header_format_set_t))
1393 
1394 #define BCM_FIELD_HEADER_FORMAT_SET_ADD(hfset, hf) SHR_BITSET(((hfset).w), (hf))
1395 
1396 #define BCM_FIELD_HEADER_FORMAT_SET_REMOVE(hfset, hf) SHR_BITCLR(((hfset).w), (hf))
1397 
1398 #define BCM_FIELD_HEADER_FORMAT_SET_TEST(hfset, hf) SHR_BITGET(((hfset).w), (hf))
1399 
1402 
1412 
1422 typedef enum bcm_field_qualify_e {
3523 
3524 #define BCM_FIELD_QUALIFY_STRINGS \
3525 { \
3526  "SrcIp6", \
3527  "DstIp6", \
3528  "SrcIp6High", \
3529  "DstIp6High", \
3530  "SrcIp6Low", \
3531  "DstIp6Low", \
3532  "SrcMac", \
3533  "DstMac", \
3534  "Snap", \
3535  "SrcIp", \
3536  "DstIp", \
3537  "Llc", \
3538  "InPort", \
3539  "InPorts", \
3540  "OutPorts", \
3541  "Drop", \
3542  "Ip6FlowLabel", \
3543  "OuterVlan", \
3544  "OuterVlanId", \
3545  "OuterVlanPri", \
3546  "OuterVlanCfi", \
3547  "InnerVlan", \
3548  "InnerVlanId", \
3549  "InnerVlanPri", \
3550  "InnerVlanCfi", \
3551  "LookupStatus", \
3552  "RangeCheck", \
3553  "L4SrcPort", \
3554  "L4DstPort", \
3555  "EtherType", \
3556  "IpProtocol", \
3557  "DSCP", \
3558  "Ttl", \
3559  "SrcModid", \
3560  "SrcPortTgid", \
3561  "SrcPort", \
3562  "SrcTrunk", \
3563  "SrcTrunkMemberGport", \
3564  "DstModid", \
3565  "DstPortTgid", \
3566  "DstPort", \
3567  "DstTrunk", \
3568  "TcpControl", \
3569  "PacketRes", \
3570  "PacketFormat", \
3571  "SrcClassL2", \
3572  "SrcClassL3", \
3573  "SrcClassField", \
3574  "DstClassL2", \
3575  "DstClassL3", \
3576  "DstClassField", \
3577  "IpInfo", \
3578  "IpProtocolCommon", \
3579  "MHOpcode", \
3580  "IpFlags", \
3581  "InnerTpid", \
3582  "OuterTpid", \
3583  "InnerIpType", \
3584  "TunnelType", \
3585  "LoopbackType", \
3586  "Loopback", \
3587  "IpType", \
3588  "ForwardingType", \
3589  "Decap", \
3590  "HiGig", \
3591  "HiGigProxy", \
3592  "DstHiGig", \
3593  "Stage", \
3594  "StageIngress", \
3595  "StageIngressSecurity", \
3596  "StageIngressQoS", \
3597  "StageLookup", \
3598  "StageEgress", \
3599  "StageEgressSecurity", \
3600  "StageExternal", \
3601  "Deprecated75", \
3602  "Deprecated76", \
3603  "TcpSequenceZero", \
3604  "TcpHeaderSize", \
3605  "InterfaceClassL2", \
3606  "InterfaceClassL3", \
3607  "InterfaceClassPort", \
3608  "L3Routable", \
3609  "IpFrag", \
3610  "Vrf", \
3611  "L3Ingress", \
3612  "OutPort", \
3613  "Ip4", \
3614  "Ip6", \
3615  "L2Format", \
3616  "VlanFormat", \
3617  "TranslatedVlanFormat", \
3618  "ExtensionHeaderType", \
3619  "ExtensionHeaderSubCode", \
3620  "ExtensionHeader2Type", \
3621  "L4Ports", \
3622  "MirrorCopy", \
3623  "TunnelTerminated", \
3624  "MplsTerminated", \
3625  "InnerSrcIp", \
3626  "InnerDstIp", \
3627  "InnerSrcIp6", \
3628  "InnerDstIp6", \
3629  "InnerSrcIp6High", \
3630  "InnerDstIp6High", \
3631  "InnerTtl", \
3632  "InnerTos", \
3633  "InnerIpProtocol", \
3634  "InnerIpFrag", \
3635  "VlanTranslationHit", \
3636  "ForwardingVlanValid", \
3637  "IngressStpState", \
3638  "L2SrcHit", \
3639  "L2SrcStatic", \
3640  "L2DestHit", \
3641  "L2StationMove", \
3642  "L2CacheHit", \
3643  "L3SrcHostHit", \
3644  "L3DestHostHit", \
3645  "L3DestRouteHit", \
3646  "IpmcStarGroupHit", \
3647  "DosAttack", \
3648  "Deprecated122", \
3649  "ClassId", \
3650  "Deprecated124", \
3651  "IcmpTypeCode", \
3652  "Deprecated126", \
3653  "InnerIpProtocolCommon", \
3654  "InnerL4SrcPort", \
3655  "InnerL4DstPort", \
3656  "InnerIp6FlowLabel", \
3657  "DstL3Egress", \
3658  "DstMulticastGroup", \
3659  "SrcMplsGport", \
3660  "DstMplsGport", \
3661  "SrcMimGport", \
3662  "DstMimGport", \
3663  "SrcWlanGport", \
3664  "DstWlanGport", \
3665  "SrcModPortGport", \
3666  "SrcModuleGport", \
3667  "Color", \
3668  "IntPriority", \
3669  "ForwardingVlanId", \
3670  "Vpn", \
3671  "FlowId", \
3672  "InVPort", \
3673  "OutVPort", \
3674  "FibreChanOuter", \
3675  "FibreChanInner", \
3676  "VnTag", \
3677  "CnTag", \
3678  "FabricQueueTag", \
3679  "MyStationHit", \
3680  "DstMultipath", \
3681  "L2PayloadFirstEightBytes", \
3682  "SrcVirtualPortValid", \
3683  "DstL3EgressNextHops", \
3684  "RecoverableDrop", \
3685  "RepCopy", \
3686  "IpTunnelHit", \
3687  "MplsLabel1Hit", \
3688  "TrillEgressRbridgeHit", \
3689  "L2GreSrcIpHit", \
3690  "MimSrcGportHit", \
3691  "MplsLabel2Hit", \
3692  "TrillIngressRbridgeHit", \
3693  "L2GreVfiHit", \
3694  "MimVfiHit", \
3695  "GenericAssociatedChannelLabelValid", \
3696  "RouterAlertLabelValid", \
3697  "DstIpLocal", \
3698  "NormalizeIpAddrs", \
3699  "NormalizeMacAddrs", \
3700  "IpAddrsNormalized", \
3701  "MacAddrsNormalized", \
3702  "MplsForwardingLabel", \
3703  "MplsForwardingLabelTtl", \
3704  "MplsForwardingLabelBos", \
3705  "MplsForwardingLabelExp", \
3706  "MplsForwardingLabelId", \
3707  "MplsControlWord", \
3708  "Rtag7AHashUpper", \
3709  "Rtag7AHashLower", \
3710  "Rtag7BHashUpper", \
3711  "Rtag7BHashLower", \
3712  "MplsForwardingLabelAction", \
3713  "MplsControlWordValid", \
3714  "EgressClass", \
3715  "EgressClassL3Interface", \
3716  "EgressClassTrill", \
3717  "EgressClassWlan", \
3718  "EgressClassL2Gre", \
3719  "LlidValue", \
3720  "CpuQueue", \
3721  "Mpls", \
3722  "SrcGport", \
3723  "HeaderFormat", \
3724  "HeaderFormatSet", \
3725  "L2Learn", \
3726  "PortOrientation", \
3727  "EcnValue", \
3728  "RxTrapCode", \
3729  "Ptch", \
3730  "MplsBos", \
3731  "RxTrapData", \
3732  "PolicerIntPrio", \
3733  "PacketTerminatedBytes", \
3734  "BypassFilter", \
3735  "ReplicantAny", \
3736  "ReplicantFirst", \
3737  "TrillEgressRbridge", \
3738  "ISid", \
3739  "InterfaceClassProcessingPort", \
3740  "DstRpfGport", \
3741  "TrunkHashResult", \
3742  "Dhcp", \
3743  "SnoopCopy", \
3744  "ForwardCopy", \
3745  "InterfaceClassVPort", \
3746  "VPortRangeCheck", \
3747  "PacketLengthRangeCheck", \
3748  "StageIngressVlanTranslation", \
3749  "StageIngressTunnelTerminated", \
3750  "StageIngressMplsTerminated", \
3751  "StageIngressIpTunnel", \
3752  "StageIngressL2Src", \
3753  "StageIngressL2Dest", \
3754  "StageIngressL3SrcRoute", \
3755  "StageIngressL3DestRoute", \
3756  "StageIngressIpmc", \
3757  "TunnelTerminatedHit", \
3758  "MplsTerminatedHit", \
3759  "L3SrcRouteHit", \
3760  "IpmcHit", \
3761  "VlanTranslationValue", \
3762  "TunnelTerminatedValue", \
3763  "MplsTerminatedValue", \
3764  "IpTunnelValue", \
3765  "L2SrcValue", \
3766  "L2DestValue", \
3767  "L3SrcRouteValue", \
3768  "L3DestRouteValue", \
3769  "IpmcValue", \
3770  "LearnSrcMac", \
3771  "LearnVlan", \
3772  "LearnSrcPort", \
3773  "PacketSize", \
3774  "InnerSrcMac", \
3775  "InnerDstMac", \
3776  "InnerEtherType", \
3777  "MplsLabel1", \
3778  "MplsLabel1Ttl", \
3779  "MplsLabel1Bos", \
3780  "MplsLabel1Exp", \
3781  "MplsLabel1Id", \
3782  "MplsLabel2", \
3783  "MplsLabel2Ttl", \
3784  "MplsLabel2Bos", \
3785  "MplsLabel2Exp", \
3786  "MplsLabel2Id", \
3787  "MplsLabel3", \
3788  "MplsLabel3Ttl", \
3789  "MplsLabel3Bos", \
3790  "MplsLabel3Exp", \
3791  "MplsLabel3Id", \
3792  "CascadedKeyValue", \
3793  "MplsOuterLabelPop", \
3794  "MplsStationHitTunnelUnterminated", \
3795  "IngressClassField", \
3796  "IngressInterfaceClassPort", \
3797  "ExternalValue0", \
3798  "ExternalValue1", \
3799  "ExternalValue2", \
3800  "ExternalValue3", \
3801  "ExternalHit0", \
3802  "ExternalHit1", \
3803  "ExternalHit2", \
3804  "ExternalHit3", \
3805  "VpnUnknownDstMacDstPort", \
3806  "VxlanNetworkId", \
3807  "VxlanFlags", \
3808  "NatNeeded", \
3809  "NatDstRealmId", \
3810  "NatSrcRealmId", \
3811  "IcmpError", \
3812  "TunnelId", \
3813  "ArpSenderIp4", \
3814  "ArpTargetIp4", \
3815  "ArpOpcode", \
3816  "TranslatedOuterVlan", \
3817  "TranslatedOuterVlanId", \
3818  "TranslatedOuterVlanPri", \
3819  "TranslatedOuterVlanCfi", \
3820  "TranslatedInnerVlan", \
3821  "TranslatedInnerVlanId", \
3822  "TranslatedInnerVlanPri", \
3823  "TranslatedInnerVlanCfi", \
3824  "ConstantZero", \
3825  "ConstantOne", \
3826  "FibreChanRCtl", \
3827  "FibreChanFCtl", \
3828  "FibreChanCSCtl", \
3829  "FibreChanDFCtl", \
3830  "FibreChanType", \
3831  "FibreChanSrcId", \
3832  "FibreChanDstId", \
3833  "FibreChanZoneCheck", \
3834  "FibreChanSrcFpmaCheck", \
3835  "FibreChanSrcBindCheck", \
3836  "FibreChanVFTVersion", \
3837  "FibreChanVFTPri", \
3838  "FibreChanVFTFabricId", \
3839  "FibreChanVFTHopCount", \
3840  "FibreChanVFTVsanId", \
3841  "FibreChanVFTVsanPri", \
3842  "FibreChanVFTValid", \
3843  "FcoeSOF", \
3844  "FcoeVersionIsZero", \
3845  "ForwardingHeaderOffset", \
3846  "L3SrcBind", \
3847  "ECid", \
3848  "IngressECid", \
3849  "ETag", \
3850  "IngressVPortBridgeDisable", \
3851  "HashValue", \
3852  "IsEqualValue", \
3853  "StageHash", \
3854  "UrpfMode", \
3855  "AppType", \
3856  "SubportPktTag", \
3857  "SrcVxlanGport", \
3858  "DstVxlanGport", \
3859  "OamMdl", \
3860  "IntCongestionNotification", \
3861  "SrcNivGport", \
3862  "DstNivGport", \
3863  "DstGport", \
3864  "MirrorEgressDisabled", \
3865  "BypassSrcMacFilter", \
3866  "RxTrapCodeForSnoop", \
3867  "IpmcStarGroupValue", \
3868  "NativeVSwitch", \
3869  "NativeVSwitchValid", \
3870  "TrillIVersion", \
3871  "TrillIngressRbridge", \
3872  "TrillMultiDestination", \
3873  "TrillOpLength", \
3874  "TrillHopCount", \
3875  "TrillPayload", \
3876  "MplsForwardingLabelPayload", \
3877  "IncomingIpIfClass", \
3878  "L2GreProtocolType", \
3879  "L2GreVsid", \
3880  "L2GreFlowId", \
3881  "MimVlanPri", \
3882  "MimVlanCfi", \
3883  "Fhei", \
3884  "FheiSize", \
3885  "EthernetOamHeaderBits0_31", \
3886  "EthernetOamHeaderBits32_63", \
3887  "EthernetOamDstClassL2", \
3888  "EthernetOamTxPktUPMEP", \
3889  "EthernetOamInterfaceClassNiv", \
3890  "EthernetOamInterfaceClassMim", \
3891  "EthernetOamInterfaceClassVxlan", \
3892  "EthernetOamInterfaceClassVlan", \
3893  "EthernetOamInterfaceClassPort", \
3894  "EthernetOamClassVlanTranslateKeyFirst", \
3895  "EthernetOamClassVlanTranslateKeySecond", \
3896  "EthernetOamInterfaceClassMpls", \
3897  "EthernetOamClassVpn", \
3898  "MplsOamHeaderBits0_31", \
3899  "MplsOamHeaderBits32_63", \
3900  "MplsOamGALLabelOnly", \
3901  "MplsOamUpperLabelDataDrop", \
3902  "MplsOamGALExposed", \
3903  "MplsOamACH", \
3904  "MplsOamControlPktType", \
3905  "MplsOamClassMplsSwitchLabel", \
3906  "OamHeaderBits0_31", \
3907  "OamHeaderBits32_63", \
3908  "OamEgressClassVxlt", \
3909  "OamEgressClassPort", \
3910  "Udf", \
3911  "OuterVlanActionRange", \
3912  "InnerVlanActionRange", \
3913  "IngressInterfaceClassVPort", \
3914  "SrcVlanGport", \
3915  "DstVlanGport", \
3916  "OamType", \
3917  "SrcVlanGports", \
3918  "DstVlanGports", \
3919  "SrcVxlanGports", \
3920  "DstVxlanGports", \
3921  "SrcWlanGports", \
3922  "DstWlanGports", \
3923  "SrcMplsGports", \
3924  "DstMplsGports", \
3925  "SrcGports", \
3926  "DstGports", \
3927  "SrcMimGports", \
3928  "DstMimGports", \
3929  "SrcNivGports", \
3930  "DstNivGports", \
3931  "SrcModPortGports", \
3932  "LearnInVPort", \
3933  "StackingRoute", \
3934  "RxTrapStrength", \
3935  "VxlanHeaderBits8_31", \
3936  "VxlanHeaderBits56_63", \
3937  "OamInLifIdValid", \
3938  "OamInLifId", \
3939  "OamUpMep", \
3940  "OamSubtype", \
3941  "OamHeaderOffset", \
3942  "OamStampOffset", \
3943  "OamMepId", \
3944  "OamMeterDisable", \
3945  "OamTsSystemHeader", \
3946  "DstMulticastGroups", \
3947  "InterfaceInPorts", \
3948  "DestVirtualPortValid", \
3949  "InVPortWide", \
3950  "StageClass", \
3951  "StageClassExactMatch", \
3952  "FcoeOxID", \
3953  "FcoeRxID", \
3954  "IpProtocolClass", \
3955  "EtherTypeClass", \
3956  "L4SrcPortClass", \
3957  "L4DstPortClass", \
3958  "SrcIpClass", \
3959  "SrcIpClassMsbNibble", \
3960  "SrcIpClassLower", \
3961  "SrcIpClassUpper", \
3962  "SrcIp6Class", \
3963  "SrcIp6ClassMsbNibble", \
3964  "SrcIp6ClassLower", \
3965  "SrcIp6ClassUpper", \
3966  "FcoeOxIDClass", \
3967  "DstIpClass", \
3968  "DstIpClassMsbNibble", \
3969  "DstIpClassLower", \
3970  "DstIpClassUpper", \
3971  "DstIp6Class", \
3972  "DstIp6ClassMsbNibble", \
3973  "DstIp6ClassLower", \
3974  "DstIp6ClassUpper", \
3975  "FcoeRxIDClass", \
3976  "FibreChanSrcIdClass", \
3977  "FibreChanSrcIdClassMsbNibble", \
3978  "FibreChanSrcIdClassLower", \
3979  "FibreChanSrcIdClassUpper", \
3980  "FibreChanDstIdClass", \
3981  "FibreChanDstIdClassMsbNibble", \
3982  "FibreChanDstIdClassLower", \
3983  "FibreChanDstIdClassUpper", \
3984  "TcpClassZero", \
3985  "TosClassZero", \
3986  "TtlClassZero", \
3987  "TcpClassOne", \
3988  "TosClassOne", \
3989  "TtlClassOne", \
3990  "OuterVlanPriCfi", \
3991  "ForwardHdrSrcMac", \
3992  "ForwardHdrDstMac", \
3993  "ForwardHdrVlanId", \
3994  "DstSysPortExt", \
3995  "StageIngressExactMatch", \
3996  "LearnExtension", \
3997  "IpFragNonOrFirst", \
3998  "PacketLength", \
3999  "GroupClass", \
4000  "UdfClass", \
4001  "InterfaceLookupClassPort", \
4002  "HiGigDstMulticast", \
4003  "HiGigDstMulticastGroupId", \
4004  "HiGigTrafficClass", \
4005  "HiGigDstModuleGport", \
4006  "HiGigDstPortGport", \
4007  "HiGigDstModPortGport", \
4008  "HiGigSrcModuleGport", \
4009  "HiGigSrcPortGport", \
4010  "HiGigSrcModPortGport", \
4011  "HiGigLoadBalanceID", \
4012  "HiGigColor", \
4013  "HiGigIntCongestionNotification", \
4014  "HiGigIngressTagged", \
4015  "HiGigDstTrunk", \
4016  "HiGigDstTrunkId", \
4017  "HiGigIngressL3SwitchPkt", \
4018  "HiGigLabel", \
4019  "HiGigReplicationId", \
4020  "HiGigVlan", \
4021  "HiGigPortFilteringMode", \
4022  "HiGigSrcTrunk", \
4023  "HiGigIngressClassificationTag", \
4024  "HiGigEgressMcast", \
4025  "HiGigVni", \
4026  "HiGigDstGport", \
4027  "HiGigMulticastIndex", \
4028  "HiGigVpReplicationId", \
4029  "HiGigSrcGport", \
4030  "HiGigProtectionSwitchingStatus", \
4031  "HiGigMirrorToVp", \
4032  "HiGigDstType", \
4033  "HiGigSrcType", \
4034  "HiGigOffloadEngineClassificationTag", \
4035  "HiGigOffloadEnginePktPriNew", \
4036  "HiGigOffloadEngineDscpNew", \
4037  "LoopBackQueue", \
4038  "LoopBackSrcGport", \
4039  "PktIsVisible", \
4040  "LoopBackCpuMasqueradePktProfile", \
4041  "LoopBackColor", \
4042  "LoopBackTrafficClass", \
4043  "LoopBackPacketProcessingPort", \
4044  "MixedSrcClassId", \
4045  "ITag", \
4046  "InterfaceIngressKeySelectClassPort", \
4047  "BfdYourDiscriminator", \
4048  "CpuVisibilityPacket", \
4049  "DstL2MulticastGroup", \
4050  "DstL3MulticastGroup", \
4051  "ExactMatchHitStatus", \
4052  "ExactMatchActionClassId", \
4053  "ExactMatchGroupClassId", \
4054  "L2PayLoad", \
4055  "CustomHeaderPkt", \
4056  "CustomHeaderData", \
4057  "MimlPkt", \
4058  "MimlSrcMac", \
4059  "MimlDstMac", \
4060  "MimlVlan", \
4061  "MimlVlanId", \
4062  "MimlVlanPri", \
4063  "MimlVlanCfi", \
4064  "MimlInnerTag", \
4065  "CapwapHdrType", \
4066  "CapwapHdrRid", \
4067  "CapwapPayloadSOF", \
4068  "CapwapPayloadDstMac", \
4069  "CapwapPayloadSrcMac", \
4070  "CapwapPayloadEtherType", \
4071  "CapwapPayloadOuterVlan", \
4072  "CapwapPayloadOuterVlanId", \
4073  "CapwapPayloadOuterVlanPri", \
4074  "CapwapPayloadOuterVlanCfi", \
4075  "CapwapPayloadInnerVlan", \
4076  "CapwapPayloadInnerVlanId", \
4077  "CapwapPayloadInnerVlanPri", \
4078  "CapwapPayloadInnerVlanCfi", \
4079  "CapwapPayloadVlanFormat", \
4080  "CapwapPayloadSip", \
4081  "CapwapPayloadDip", \
4082  "CapwapPayloadSip6", \
4083  "CapwapPayloadDip6", \
4084  "CapwapPayloadIpProtocol", \
4085  "CapwapPayloadTos", \
4086  "CapwapPayloadL4DstPort", \
4087  "CapwapPayloadL4SrcPort", \
4088  "CapwapPayloadL3HdrParseable", \
4089  "CapwapPayloadL4HdrParseable", \
4090  "VlanAction", \
4091  "DownMepSatTerminated", \
4092  "DstMultipathOverlay", \
4093  "DstMultipathUnderlay", \
4094  "StpState", \
4095  "HiGigMirrorOrSwitchPkt", \
4096  "HiGigPreserveFlags", \
4097  "HiGigMplsPkt", \
4098  "HiGigDoNotFlags", \
4099  "HiGigVpPreserveFlags", \
4100  "HiGigOffloadEngineVxltStatus", \
4101  "HiGigForwardingType", \
4102  "HiGigLabelType", \
4103  "HiGigExtendedHeaderPresent", \
4104  "HiGigVpLagFailoverPacket", \
4105  "HiGigOffloadEnginePreserveDscp", \
4106  "HiGigOffloadEnginePreserveDot1p", \
4107  "HiGigOffloadEngineDeferredFlags", \
4108  "HiGigOffloadEngineSrcType", \
4109  "SystemPortBitmap", \
4110  "SourceGportBitmap", \
4111  "DevicePortBitmap", \
4112  "TosLower4Bits", \
4113  "OamEgressClass2Vxlt", \
4114  "OamEgressVxltFirstHit", \
4115  "OamEgressVxltSecondHit", \
4116  "OamDownMEPLoopbackPacket", \
4117  "OamEgressPortUnicastDstMacHit", \
4118  "OamSat", \
4119  "IngressDropEthernetOamControl", \
4120  "IngressDropEthernetOamData", \
4121  "IngressDropMplsOamControl", \
4122  "IngressDropMplsOamData", \
4123  "EgressClassVxlan", \
4124  "OamEgressEtherType", \
4125  "OamEgressMulticastMacHit", \
4126  "TrunkMemberSourceModuleId", \
4127  "OamEgressClassSrcMac", \
4128  "MyStation2Hit", \
4129  "ExternalValue4", \
4130  "ExternalValue5", \
4131  "ExternalHit4", \
4132  "ExternalHit5", \
4133  "GeneratedTtl", \
4134  "IpMulticastCompatible", \
4135  "EgressClassTunnel", \
4136  "EgressClassL3InterfaceTunnel", \
4137  "StaggeredValue0", \
4138  "StaggeredValue1", \
4139  "StaggeredValue2", \
4140  "StaggeredValue3", \
4141  "StaggeredDirectValue", \
4142  "StaggeredPreselProfile0", \
4143  "StaggeredPreselProfile1", \
4144  "StaggeredPreselProfile2", \
4145  "StaggeredPreselProfile3", \
4146  "StaggeredPreselProfileDirect", \
4147  "bcmFieldQaulifyPreselId", \
4148  "EthernetData", \
4149  "PreemptablePacket", \
4150  "VxlanClassValid", \
4151  "VxlanPacket", \
4152  "VxlanVnidVlanTranslateHit", \
4153  "VxlanPayloadVlanFormat", \
4154  "TunnelPayloadDstMac", \
4155  "TunnelPayloadSrcMac", \
4156  "TunnelPayloadEtherType", \
4157  "TunnelPayloadOuterVlan", \
4158  "TunnelPayloadOuterVlanId", \
4159  "TunnelPayloadOuterVlanPri", \
4160  "TunnelPayloadOuterVlanCfi", \
4161  "TunnelPayloadSip", \
4162  "TunnelPayloadDip", \
4163  "TunnelPayloadSip6", \
4164  "TunnelPayloadDip6", \
4165  "TunnelPayloadIpProtocol", \
4166  "TunnelPayloadL4DstPort", \
4167  "TunnelPayloadL4SrcPort", \
4168  "RoceBthOpcode", \
4169  "RoceBthPartitionKey", \
4170  "RoceBthDstQueuePair", \
4171  "RoceBthFlags", \
4172  "RoceVer1Pkt", \
4173  "RoceVer2Pkt", \
4174  "SrcPortSRType", \
4175  "DstPortSRType", \
4176  "SrcPortSRRoleInterlink", \
4177  "DstPortSRRoleInterlink", \
4178  "SrcPortSRMode", \
4179  "DstPortSRMode", \
4180  "SrcPortSRNetId", \
4181  "DstPortSRNetId", \
4182  "SrcPortSRLanId", \
4183  "DstPortSRLanId", \
4184  "SRTagType", \
4185  "SRLanId", \
4186  "SRNetId", \
4187  "VlanSREnable", \
4188  "VlanSRLanId", \
4189  "SRFlowId", \
4190  "L2DestSRNodeType", \
4191  "SRNetIdMatched", \
4192  "SRSrcNodeIsSan", \
4193  "SRSupervisionType", \
4194  "SRError", \
4195  "L2SrcMulticastHit", \
4196  "L2DstMulticastHit", \
4197  "SRDuplicate", \
4198  "TsnFlowId", \
4199  "ExternalValue6", \
4200  "ExternalValue7", \
4201  "ExternalHit6", \
4202  "ExternalHit7", \
4203  "MirrorDest", \
4204  "PacketIsIEEE1588", \
4205  "IEEE1588Encapsulation", \
4206  "IEEE1588CompensateTimeStamp", \
4207  "IEEE1588Command", \
4208  "IEEE1588HeaderOffset", \
4209  "HeaderFormatExtension", \
4210  "MacSecTagPresent", \
4211  "MacSecTag", \
4212  "MacSecDstMacRangeHit", \
4213  "FromMacSecPort", \
4214  "MacSecFlow", \
4215  "EgressBridgedForwardingDataHigh", \
4216  "EgressBridgedForwardingDataLow", \
4217  "EgressBridgedAclDataHigh", \
4218  "EgressBridgedAclDataLow", \
4219  "SysHdrType", \
4220  "SubportTagPresent", \
4221  "NetworkTagType", \
4222  "CnTagPresent", \
4223  "L2PktType", \
4224  "PktType", \
4225  "MplsCwPresent", \
4226  "MplsMcastEthertypePresent", \
4227  "Ipv4OptionHdrType", \
4228  "Ipv6ExtensionHdrType", \
4229  "OverlayVlanFormat", \
4230  "OverlayL2PktType", \
4231  "OverlayPktType", \
4232  "OverlayIpv4OptionHdrType", \
4233  "OverlayIpv6ExtensionHdrType", \
4234  "FrontPanelPkt", \
4235  "HiGigProxyTunnelType", \
4236  "IpFragPkt", \
4237  "OuterPriTaggedPkt", \
4238  "IpInIpPkt", \
4239  "IpmcV4Pkt", \
4240  "IpmcV6Pkt", \
4241  "IpChecksumOkPkt", \
4242  "NetworkTagMulticastPkt", \
4243  "IpTtlZeroPkt", \
4244  "PimBidirDfStatus", \
4245  "InterfaceClassL2Type", \
4246  "IntPktVersionOne", \
4247  "IntPktOverflowed", \
4248  "IntPktLengthValid", \
4249  "IntPktType", \
4250  "IntPktFinalHop", \
4251  "TunnelSubType", \
4252  "NshServicePathId", \
4253  "NshServiceIndex", \
4254  "KeyGenVar", \
4255  "RoeFrameType", \
4256  "BfdGoodPkt", \
4257  "BfdPktWithDstIpLoopbackAddr", \
4258  "MplsControlPkt", \
4259  "StageIngressFlowtracker", \
4260  "InterfaceClassMplsLookup1", \
4261  "InterfaceClassMplsLookup2", \
4262  "InterfaceClassMplsLookup3", \
4263  "InterfaceClassL3Tunnel", \
4264  "BfdPktVersionOne", \
4265  "GenevePktVersionZero", \
4266  "GpePktVersionZero", \
4267  "GenevePktWithOam", \
4268  "GpePktWithOam", \
4269  "InnerBfdPktVersionOne", \
4270  "PktDstAddrType", \
4271  "PktInnerDstAddrType", \
4272  "InnerL4Ports", \
4273  "TafEnable", \
4274  "TafGateId", \
4275  "TafGateState", \
4276  "TafCosProfile", \
4277  "ElkRangeL4DstPort", \
4278  "ElkRangeL4SrcPort", \
4279  "Ip6PktNextHeader", \
4280  "Ip6PktHopLimit", \
4281  "Ip6PktTrafficClass", \
4282  "InnerIp6PktNextHeader", \
4283  "InnerIp6PktHopLimit", \
4284  "InnerIp6PktTrafficClass", \
4285  "IpTunnelTtl", \
4286  "IpTunnelTtlClassZero", \
4287  "RangeCheckGroup", \
4288  "FlowtrackerGroupId", \
4289  "FlowtrackerClassId", \
4290  "FlowtrackerGroupValid", \
4291  "FlowtrackerDisabled", \
4292  "FlowtrackerMeteringExceeded", \
4293  "FlowtrackerCollectorCopy", \
4294  "FlowtrackerFlowTableFull", \
4295  "FlowtrackerGroupFlowExceeded", \
4296  "FlowtrackerExportQueueFull", \
4297  "OpaqueTagType", \
4298  "OpaqueTagHigh", \
4299  "OpaqueTagLow", \
4300  "InnerDosAttack", \
4301  "DosAttackEvents", \
4302  "InnerDosAttackEvents", \
4303  "SrcTMPort", \
4304  "Container", \
4305  "EgressForwardingClassId", \
4306  "PktFlowType", \
4307  "VlanTranslateClassId", \
4308  "IpIdentifier", \
4309  "TcpWindowSize", \
4310  "Ip4Length", \
4311  "Ip6Length", \
4312  "TunnelPayloadIp4Length", \
4313  "TunnelPayloadIp6Length", \
4314  "GbpPresent", \
4315  "HiGigGbpPresent", \
4316  "GbpSrcId", \
4317  "VxlanGbpPresent", \
4318  "FlowtrackerCheck", \
4319  "FlowtrackerLearn", \
4320  "CosMapSelect", \
4321  "OpaqueObject1", \
4322  "OpaqueObject2", \
4323  "OpaqueObject3", \
4324  "OpaqueObject4", \
4325  "IncomingOuterVlanId", \
4326  "GbpDstId", \
4327  "HiGigGbpSrcId", \
4328  "LoopbackSubtype", \
4329  "PphPresent", \
4330  "PacketProcessingInVportClass", \
4331  "UDHBase0", \
4332  "UDHBase1", \
4333  "UDHBase2", \
4334  "UDHBase3", \
4335  "NetworkQos", \
4336  "AceEntryId", \
4337  "Ip4Protocol", \
4338  "Ip4Tos", \
4339  "Ip4Ttl", \
4340  "InVportDataIndex", \
4341  "EtherTypeUntagged", \
4342  "NetworkLoadBalanceKeyInitial", \
4343  "NetworkLoadBalanceKey", \
4344  "EcmpLoadBalanceKey0Initial", \
4345  "EcmpLoadBalanceKey0", \
4346  "EcmpLoadBalanceKey1Initial", \
4347  "EcmpLoadBalanceKey1", \
4348  "EcmpLoadBalanceKey2Initial", \
4349  "EcmpLoadBalanceKey2", \
4350  "TrunkLoadBalanceKeyInitial", \
4351  "StateTableKey", \
4352  "StateTableData", \
4353  "CompareKeysResult0", \
4354  "CompareKeysResult1", \
4355  "CompareKeysTcam0", \
4356  "CompareKeysTcam1", \
4357  "LayerRecordType", \
4358  "LayerRecordOffset", \
4359  "LayerRecordQualifier", \
4360  "UDHBase", \
4361  "ForwardingLayerIndex", \
4362  "IPTProfile", \
4363  "AcInLifWideData", \
4364  "NativeAcInLifWideData", \
4365  "ForwardingProfile", \
4366  "ContextId", \
4367  "ForwardingLayerQualifier", \
4368  "TracePacket", \
4369  "TrunkLoadBalanceKey", \
4370  "Forward", \
4371  "ParsingStartType", \
4372  "ParsingStartOffset", \
4373  "UDHData0", \
4374  "UDHData1", \
4375  "UDHData2", \
4376  "UDHData3", \
4377  "RxSnoopStrength", \
4378  "RxSnoopCode", \
4379  "Visibility", \
4380  "VisibilityClear", \
4381  "EthernetMulticast", \
4382  "EthernetBroadcast", \
4383  "EthernetFirstTpidExist", \
4384  "EthernetFirstTpidIndex", \
4385  "EthernetSecondTpidExist", \
4386  "EthernetSecondTpidIndex", \
4387  "EthernetThirdTpidExist", \
4388  "EthernetThirdTpidIndex", \
4389  "IpHasOptions", \
4390  "IpFirstFrag", \
4391  "IpTunnelType", \
4392  "Ip6MulticastCompatible", \
4393  "Ip6FirstAdditionalHeaderExist", \
4394  "ItmhExtensionExist", \
4395  "ItmhDestinationFec", \
4396  "ItmhPphType", \
4397  "StatSamplingCode", \
4398  "StatSamplingQualifier", \
4399  "RpfEcmpMode", \
4400  "StatOamLM", \
4401  "InInterface", \
4402  "OutInterface", \
4403  "InVportClass", \
4404  "OutVportClass", \
4405  "InterfaceClass", \
4406  "PortClassPacketProcessing", \
4407  "PortClassTrafficManagement", \
4408  "OutPortTrafficManagement", \
4409  "MulticastRpfMode", \
4410  "Tpid", \
4411  "VlanId", \
4412  "VlanPri", \
4413  "VlanCfi", \
4414  "VlanPriCfi", \
4415  "Vlan", \
4416  "MplsLabel", \
4417  "MplsLabelId", \
4418  "MplsLabelTtl", \
4419  "MplsLabelBos", \
4420  "MplsLabelExp", \
4421  "InVPort0", \
4422  "InVPort1", \
4423  "OutVPort0", \
4424  "OutVPort1", \
4425  "OutVPort2", \
4426  "OutVPort3", \
4427  "BierStringOffset", \
4428  "BierStringSize", \
4429  "PacketIsBier", \
4430  "PortClassPacketProcessingGeneralData", \
4431  "ForwardingAdditionalInfo", \
4432  "InVportClass0", \
4433  "InVportClass1", \
4434  "StatId0", \
4435  "StatId1", \
4436  "StatId2", \
4437  "StatId3", \
4438  "StatId4", \
4439  "StatId5", \
4440  "StatId6", \
4441  "StatId7", \
4442  "StatId8", \
4443  "StatId9", \
4444  "StatProfile0", \
4445  "StatProfile1", \
4446  "StatProfile2", \
4447  "StatProfile3", \
4448  "StatProfile4", \
4449  "StatProfile5", \
4450  "StatProfile6", \
4451  "StatProfile7", \
4452  "StatProfile8", \
4453  "StatProfile9", \
4454  "ExtStat0", \
4455  "ExtStat1", \
4456  "ExtStat2", \
4457  "ExtStat3", \
4458  "ExtStatProfile0", \
4459  "ExtStatProfile1", \
4460  "ExtStatProfile2", \
4461  "ExtStatProfile3", \
4462  "StatMetaData", \
4463  "DstL3EgressUnderlay", \
4464  "DstL3EgressNextHopsUnderlay", \
4465  "EgressClassPort", \
4466  "INTProbeMarker1", \
4467  "INTProbeMarker2", \
4468  "INTReserved4Bytes", \
4469  "InVPort0Raw", \
4470  "InVPort1Raw", \
4471  "OutVPort0Raw", \
4472  "OutVPort1Raw", \
4473  "OutVPort2Raw", \
4474  "OutVPort3Raw", \
4475  "AppTypePredefined", \
4476  "FlowControlType", \
4477  "TimeStampTxPktType", \
4478  "SysHdrLocalDstport", \
4479  "MirrorCode", \
4480  "MirrorData", \
4481  "LearnVsi", \
4482  "LearnData", \
4483  "LearnStationMove", \
4484  "LearnMatch", \
4485  "LearnFound", \
4486  "LearnExpectedWon", \
4487  "VrfValue", \
4488  "InPortWithoutCore", \
4489  "DstSysPortExtPresent", \
4490  "IpFwdPlusOneNextProtocol", \
4491  "MacSecControlPkt", \
4492  "MacSecSecTagCbit", \
4493  "MacSecSecTagEbit", \
4494  "IOAMNameSpaceIdMatch", \
4495  "IOAMPktOverflowed", \
4496  "IOAMRemainingLenValid", \
4497  "SaLookupAcceptedStrength", \
4498  "LayerRecordTypeRaw", \
4499  "SrcPortRaw", \
4500  "SrcModPortGportRaw", \
4501  "DstMulticastGroupRaw", \
4502  "InInterfaceRaw", \
4503  "OutInterfaceRaw", \
4504  "InPortWithoutCoreRaw", \
4505  "VlanFormatRaw", \
4506  "InPortRaw", \
4507  "ColorRaw", \
4508  "DstGportRaw", \
4509  "DstPortRaw", \
4510  "OutPortRaw", \
4511  "DstRpfValid", \
4512  "RpfOutVPort", \
4513  "RpfOutInterface", \
4514  "RpfOutVPortRaw", \
4515  "RpfRouteValid", \
4516  "EcmpGroup", \
4517  "Ip4DstMulticast", \
4518  "IgmpType", \
4519  "L2IngressInterface", \
4520  "L3SrcHit", \
4521  "L3DestHit", \
4522  "L2MacInfo", \
4523  "L4Info", \
4524  "InnerPriTaggedPkt", \
4525  "HiGig3Class", \
4526  "HiGig3Flags", \
4527  "LoopbackHiGig3Flags", \
4528  "IpExtensionHdrNum", \
4529  "IngressL2InterfaceOpaqueCtrlId", \
4530  "DevicePortOpaqueCommand", \
4531  "IngressInterfaceClass", \
4532  "IngressL3InterfaceOpaqueCtrlId", \
4533  "SvpOpaqueCtrlId", \
4534  "VpnOpaqueCtrlId", \
4535  "L2SrcDiscard", \
4536  "L2LearnCommands", \
4537  "TunnelTermStatus", \
4538  "LoopbackHdrFlags", \
4539  "PacketStatus", \
4540  "ForwardingStatus", \
4541  "TunnelAltEtherType", \
4542  "TunnelAltSrcIp", \
4543  "TunnelAltSrcIp6", \
4544  "TunnelAltDstIp", \
4545  "TunnelAltDstIp6", \
4546  "TunnelAltIpProtocol", \
4547  "TunnelAltL4SrcPort", \
4548  "TunnelAltL4DstPort", \
4549  "OuterL2MacInfo", \
4550  "OuterIpInfo", \
4551  "OuterL4Info", \
4552  "InnerL2MacInfo", \
4553  "InnerIpInfo", \
4554  "InnerL4Info", \
4555  "EffectiveTtl", \
4556  "FlexStateResultA0", \
4557  "FlexStateResultA1", \
4558  "LastIpProtocol", \
4559  "MplsLabel4", \
4560  "MplsLabel4Ttl", \
4561  "MplsLabel4Bos", \
4562  "MplsLabel4Exp", \
4563  "MplsLabel4Id", \
4564  "MplsLabel5", \
4565  "MplsLabel5Ttl", \
4566  "MplsLabel5Bos", \
4567  "MplsLabel5Exp", \
4568  "MplsLabel5Id", \
4569  "MplsLabel6", \
4570  "MplsLabel6Ttl", \
4571  "MplsLabel6Bos", \
4572  "MplsLabel6Exp", \
4573  "MplsLabel6Id", \
4574  "MplsLabel7", \
4575  "MplsLabel7Ttl", \
4576  "MplsLabel7Bos", \
4577  "MplsLabel7Exp", \
4578  "MplsLabel7Id", \
4579  "L5PayloadByte1", \
4580  "L5PayloadByte2", \
4581  "L5PayloadByte3", \
4582  "L5PayloadByte4", \
4583  "L5PayloadByte5", \
4584  "L5PayloadByte6", \
4585  "L5PayloadByte7", \
4586  "L5PayloadByte8", \
4587  "OuterL5PayloadByte1", \
4588  "OuterL5PayloadByte2", \
4589  "OuterL5PayloadByte3", \
4590  "OuterL5PayloadByte4", \
4591  "OuterL5PayloadByte5", \
4592  "OuterL5PayloadByte6", \
4593  "OuterL5PayloadByte7", \
4594  "OuterL5PayloadByte8", \
4595  "ArpSrcMac", \
4596  "ArpDstMac", \
4597  "L2EgressInterface", \
4598  "Stg", \
4599  "CosQueueNum", \
4600  "CopyToCpu", \
4601  "CopyToCpuTruncate", \
4602  "McastPkt", \
4603  "UntagPkt", \
4604  "DoNotModify", \
4605  "TxPortType", \
4606  "RxPortType", \
4607  "MirrorPktType", \
4608  "PtpMsgType", \
4609  "PtpVersion", \
4610  "PtpPktCtrl", \
4611  "VlanMembershipCheck", \
4612  "InnerVlanTagPreserve", \
4613  "OuterVlanTagPreserve", \
4614  "ForwardingEligible", \
4615  "InterfaceClassMpls", \
4616  "L3Check", \
4617  "L2InterfaceMatch", \
4618  "ProtocolPktOpaqueCtrlId", \
4619  "LookupClassField", \
4620  "ExactMatchOpaqueObject0", \
4621  "IcmpType", \
4622  "OuterVlanRangeMatch", \
4623  "InnerVlanRangeMatch", \
4624  "TunnelHeaderDstMac", \
4625  "TunnelHeaderSrcMac", \
4626  "TunnelHeaderSip", \
4627  "TunnelHeaderDip", \
4628  "TunnelHeaderSip6", \
4629  "TunnelHeaderDip6", \
4630  "TunnelHeaderIpProtocol", \
4631  "MHPriority", \
4632  "EgressPortCtrlType", \
4633  "SubportGroupIds", \
4634  "StageAggregateMmuFlowtracker", \
4635  "StageAggregateEgressFlowtracker", \
4636  "FlowtrackerAggregateClass", \
4637  "FlowtrackerClassIdSource1", \
4638  "FlowtrackerClassIdSource2", \
4639  "ApplSignatureId", \
4640  "InnerApplSignatureId", \
4641  "CosQueueId", \
4642  "CongestionExperienced", \
4643  "CongestionMarked", \
4644  "IsUcastCosQueue", \
4645  "EgressPortQueue", \
4646  "LearnExtensionPresent", \
4647  "L3EgressIntf", \
4648  "ForwardCode", \
4649  "PktFwdType", \
4650  "StatOamLMRaw", \
4651  "RangeFirstHit0", \
4652  "RangeFirstHit1", \
4653  "RangeFirstHit2", \
4654  "RangeFirstHit3", \
4655  "IfaCurrentLengthEqualToZero", \
4656  "IfaHopLimitEqualToZero", \
4657  "IfaVersion2", \
4658  "IfaGlobalNameSpace", \
4659  "IfaLocalNameSpace", \
4660  "IfaCurrentLength", \
4661  "IfaRequestVector", \
4662  "DstType", \
4663  "LoopbackHdrDstType", \
4664  "OverlayNetworkTagType", \
4665  "OverlayIpOptionHdrType", \
4666  "IpOptionHdrType", \
4667  "FirstDropReason", \
4668  "DropReason", \
4669  "CopyToCpuReasonLow", \
4670  "Rtag7CHashLower", \
4671  "Rtag7CHashUpper", \
4672  "AppTypeRaw", \
4673  "AppTypePredefinedRaw", \
4674  "ForwardingTypeRaw", \
4675  "ContextIdRaw", \
4676  "OverlayEgressClass", \
4677  "EgressL3TunnelGport", \
4678  "EgressMcastPktReason", \
4679  "EgressPktQueueNotification", \
4680  "EgressDOPTrigger", \
4681  "EgressTunnelIpHeaderFlowLabel", \
4682  "EgressTunnelIpHeaderEcn", \
4683  "EgressTunnelIpHeaderDscp", \
4684  "IpExtHdr2Protocol", \
4685  "L2EgrIntfEfpCtrlId", \
4686  "IfaFlags", \
4687  "IfaMaxLength", \
4688  "IfaActionVector", \
4689  "StateTableDataWrite", \
4690  "CopyToCpuReasonHigh", \
4691  "InnerTcpControl", \
4692  "TunnelTerminationProcessingProfile", \
4693  "IntFlags", \
4694  "IntHdrType", \
4695  "IntUdpChecksumEqualsZero", \
4696  "IntMetadataHdrType", \
4697  "IntHdrPresent", \
4698  "CompressionSrcHit", \
4699  "CompressionDstHit", \
4700  "IpTunnelTypeRaw", \
4701  "SampledPkt", \
4702  "SrcIp6SrhValid", \
4703  "FtmhAsePresent", \
4704  "FtmhAseType", \
4705  "HiGig3Pkt", \
4706  "LoopbackLagFailoverPkt", \
4707  "PktMiscCtrl", \
4708  "ForwardingOuterVlanPri", \
4709  "ForwardingOuterTpid", \
4710  "IncomingVlanFormat", \
4711  "BfdMultiplierLen", \
4712  "BfdVerFlags", \
4713  "GpeFlags", \
4714  "GpeNetworkId", \
4715  "GpeProtocol", \
4716  "GpeReserved0", \
4717  "GpeReserved1", \
4718  "IfaAttrOpaqData", \
4719  "IgmpMaxRespTime", \
4720  "MplsTopHeader", \
4721  "MplsVcLabelHeader", \
4722  "TcpAckNum", \
4723  "TcpSequenceNum", \
4724  "UdpLength", \
4725  "PtpReserved1", \
4726  "PtpTransportSpec", \
4727  "LoopbackIfaSwitchCopyDrop", \
4728  "VipValid", \
4729  "VipId", \
4730  "VIPMemberReference", \
4731  "PccHit", \
4732  "PdelayReq", \
4733  "PphType", \
4734  "RxTrapProfile", \
4735  "DstMultipathLevel1", \
4736  "DstMultipathLevel2", \
4737  "Svtag", \
4738  "RecircleHdrFirstDropReason", \
4739  "RecircleHdrDropReason", \
4740  "RecircleHdrCode", \
4741  "MacSecOpaque", \
4742  "MirrorOnDrop", \
4743  "MirrorOnDropReason", \
4744  "IntCtrl", \
4745  "IfaHopCount", \
4746  "IfaHopLimit", \
4747  "L2SrcMiscClassId", \
4748  "L2DstMiscClassId", \
4749  "L3SrcMiscClassId", \
4750  "L3DstMiscClassId", \
4751  "RawResidenceTime", \
4752  "IpFragInfo", \
4753  "InDscpExp", \
4754  "AcInLifWideDataExtended", \
4755  "IfaNextHdr", \
4756  "IfaVersion", \
4757  "IngressL2InterfaceOpaqueCtrlId1", \
4758  "IngressL2InterfaceFlexDigestCtrlIdA", \
4759  "IngressL2InterfaceFlexDigestCtrlIdB", \
4760  "AcInLifWideDataExtendedRaw", \
4761  "ForwardingPacketRes", \
4762  "SrcCompressionClassId", \
4763  "DstCompressionClassId", \
4764  "IPv6FragmentedNonFirst", \
4765  "RecircleHdrOpaqueCtrlIdC", \
4766  "Ip6SecondAdditionalHeaderExist", \
4767  "MplsForwardingControlWord", \
4768  "MplsCtrlPktType" \
4769 }
4770 
4787 
4788 #define BCM_FIELD_QUALIFIERCLASS_STRINGS \
4789 { \
4790  "bcmFieldQualifierClassMetaData", \
4791  "bcmFieldQualifierClassHeader", \
4792  "bcmFieldQualifierClassLayerRecord", \
4793  "bcmFieldQualifierClassUserCreated" \
4794 }
4795 
4801 typedef enum bcm_field_stage_e {
4825 
4826 #define BCM_FIELD_STAGE_STRINGS \
4827 { \
4828  "First", \
4829  "IngressEarly", \
4830  "IngressLate", \
4831  "Default", \
4832  "Last", \
4833  "Ingress", \
4834  "Egress", \
4835  "External", \
4836  "Hash", \
4837  "IngressExactMatch", \
4838  "IngressFlowtracker", \
4839  "IngressPMF1", \
4840  "IngressPMF2", \
4841  "IngressPMF3", \
4842  "Lookup", \
4843  "Class", \
4844  "AggregateMmuFlowtracker", \
4845  "AggregateEgressFlowtracker", \
4846  "EgressExtension" \
4847 }
4848 
4853 typedef struct bcm_field_stage_info_s {
4862 
4865  int qual_id;
4870  int length;
4877  uint8 name[BCM_FIELD_MAX_NAME_LEN];
4879 
4880 #define BCM_FIELD_QUALIFY_MAX (bcmFieldQualifyCount + BCM_FIELD_USER_NUM_UDFS)
4882 #define BCM_FIELD_QUALIFY_WIDTH_MAX 50
4883 
4884 #define BCM_FIELD_QSET_WIDTH_MAX \
4885  ((BCM_FIELD_QUALIFY_WIDTH_MAX+1) * \
4886  bcmFieldQualifyCount + 1)
4887 
4888 #define BCM_FIELD_EXACT_MATCH_MASK (~0)
4895 typedef enum bcm_field_decap_e {
4907 
4908 #define BCM_FIELD_DECAP_STRINGS \
4909 { \
4910  "None", \
4911  "L2Mpls", \
4912  "L3Mpls", \
4913  "OtherMPLS", \
4914  "IpTunnel", \
4915  "IpGreTunnel", \
4916  "IpUdpTunnel", \
4917  "IpPimTunnel", \
4918  "Vxlan" \
4919 }
4920 
4962 
4963 #define BCM_FIELD_FORWARDINGTYPE_STRINGS \
4964 { \
4965  "Any", \
4966  "L2", \
4967  "L3", \
4968  "L2Shared", \
4969  "L2Independent", \
4970  "L2Vpn", \
4971  "L2VpnDirect", \
4972  "L3Direct", \
4973  "Ip4Ucast", \
4974  "Ip4Mcast", \
4975  "Ip6Ucast", \
4976  "Ip6Mcast", \
4977  "Mpls", \
4978  "Trill", \
4979  "RxReason", \
4980  "TrafficManagement", \
4981  "Snoop", \
4982  "MplsLabel1", \
4983  "MplsLabel2", \
4984  "MplsLabel3", \
4985  "FCoE", \
4986  "PortExtender", \
4987  "Custom1", \
4988  "Custom2", \
4989  "L2SharedVpn", \
4990  "PortDirect", \
4991  "SvpDirect", \
4992  "VlanDirect" \
4993 }
4994 
5009 
5010 #define BCM_FIELD_HIGIGFORWARDINGTYPE_STRINGS \
5011 { \
5012  "ControlPacket", \
5013  "KnownL2", \
5014  "KnownL3", \
5015  "UnknownL2Multicast", \
5016  "UnknownL3Multicast", \
5017  "BroadcastOnUnknownL2Unicast", \
5018  "Broadcast" \
5019 }
5020 
5022 typedef enum bcm_field_AppType_e {
5093 
5094 #define BCM_FIELD_APPTYPE_STRINGS \
5095 { \
5096  "Any", \
5097  "L2", \
5098  "L2VpnDirect", \
5099  "Ip4Ucast", \
5100  "Ip4McastBidir", \
5101  "Ip6Ucast", \
5102  "Ip6Mcast", \
5103  "Mpls", \
5104  "Arp", \
5105  "TrillUcast", \
5106  "TrillMcast", \
5107  "L2TrillMcast", \
5108  "TrafficManagement", \
5109  "MiM", \
5110  "L2MiM", \
5111  "Ip4UcastRpf", \
5112  "Ip6UcastRpf", \
5113  "Ip4McastRpf", \
5114  "CompIp4McastRpf", \
5115  "Ip6McastRpf", \
5116  "MplsCoupling", \
5117  "FCoE", \
5118  "FCoETransit", \
5119  "FCoEVft", \
5120  "FCoERemote", \
5121  "FCoEVftRemote", \
5122  "L2VpnExtended", \
5123  "Ip4MacSrcBind", \
5124  "Ip6MacSrcBind", \
5125  "Ip4SrcBind", \
5126  "Ip6SrcBind", \
5127  "VplsGreIp", \
5128  "FglTrillMcast", \
5129  "BfdIp4SingleHop", \
5130  "BfdEcho", \
5131  "Ip4DoubleCapacity", \
5132  "Ip6UcastPublic", \
5133  "Ip6UcastRpfPublic", \
5134  "Ip4UcastPublic", \
5135  "Ip4UcastRpfPublic", \
5136  "Ip4McastL2Ssm", \
5137  "Ip6McastL2Ssm", \
5138  "BfdIp6SingleHop", \
5139  "Ip6McastL3Ssm", \
5140  "Ip6McastL3SsmCompressSip", \
5141  "Vip4", \
5142  "Vip6", \
5143  "Vip4Direct", \
5144  "Vip6Direct" \
5145 }
5146 
5177 
5178 #define BCM_FIELD_LOOPBACKTYPE_STRINGS \
5179 { \
5180  "Any", \
5181  "Mirror", \
5182  "Wlan", \
5183  "Mim", \
5184  "Redirect", \
5185  "TrillNetwork", \
5186  "TrillAccess", \
5187  "RegexMatch", \
5188  "MplsP2mp", \
5189  "Qcn", \
5190  "WlanEncap", \
5191  "WlanEncapEncrypt", \
5192  "WlanDecap", \
5193  "PassThru", \
5194  "MplsExtendedLookup", \
5195  "L2Gre", \
5196  "Vxlan", \
5197  "TunnelAny", \
5198  "Masquerade", \
5199  "L2Tunnel2ndPassFlow", \
5200  "MasqueradeWithSwitchDropIndication" \
5201 }
5202 
5207 typedef enum bcm_field_PortType_e {
5214 
5215 #define BCM_FIELD_PORTTYPE_STRINGS \
5216 { \
5217  "Ethernet", \
5218  "Cpu", \
5219  "Loopback", \
5220  "HiGig3" \
5221 }
5222 
5227 typedef enum bcm_field_DstType_e {
5236 
5237 #define BCM_FIELD_DSTTYPE_STRINGS \
5238 { \
5239  "L2EgrIntf", \
5240  "Vp", \
5241  "Ecmp", \
5242  "L3Egr", \
5243  "L2Mcast", \
5244  "L3Mcast" \
5245 }
5246 
5252 
5253 #define BCM_FIELD_TUNNELTERMINATIONPROCESSINGPROFILE_STRINGS \
5254 { \
5255  "Pppoe", \
5256  "L2tp" \
5257 }
5258 
5271 
5272 #define BCM_FIELD_FIBRECHAN_STRINGS \
5273 { \
5274  "Any", \
5275  "bcmFieldFibreChan", \
5276  "Encap", \
5277  "Virtual", \
5278  "Routed" \
5279 }
5280 
5320 
5321 #define BCM_FIELD_TUNNELTYPE_STRINGS \
5322 { \
5323  "Any", \
5324  "Ip", \
5325  "Mpls", \
5326  "Mim", \
5327  "WlanWtpToAc", \
5328  "WlanAcToAc", \
5329  "AutoMulticast", \
5330  "Trill", \
5331  "L2Gre", \
5332  "Ip6", \
5333  "MplsControlWord", \
5334  "MplsLabel2", \
5335  "MplsLabel2ControlWord", \
5336  "MplsLabel3", \
5337  "MplsLabel3ControlWord", \
5338  "Vxlan", \
5339  "None", \
5340  "VxlanFlex", \
5341  "Gpe", \
5342  "Geneve", \
5343  "MplsOverGre", \
5344  "Nsh", \
5345  "SRv6", \
5346  "Gre4", \
5347  "Gre8WithKey", \
5348  "Gre12", \
5349  "Udp", \
5350  "L2TPv3OverUdp", \
5351  "Esp", \
5352  "EspOverUdp" \
5353 }
5354 
5356 typedef enum bcm_field_IpType_e {
5386 
5387 #define BCM_FIELD_IPTYPE_STRINGS \
5388 { \
5389  "Any", \
5390  "NonIp", \
5391  "Ipv4Not", \
5392  "Ipv4NoOpts", \
5393  "Ipv4WithOpts", \
5394  "Ipv4Any", \
5395  "Ipv6Not", \
5396  "Ipv6NoExtHdr", \
5397  "Ipv6OneExtHdr", \
5398  "Ipv6TwoExtHdr", \
5399  "Ipv6", \
5400  "Ip", \
5401  "Arp", \
5402  "ArpRequest", \
5403  "ArpReply", \
5404  "MplsUnicast", \
5405  "MplsMulticast", \
5406  "Trill", \
5407  "Mim", \
5408  "Mpls", \
5409  "Cfm", \
5410  "FCoE" \
5411 }
5412 
5431 
5432 #define BCM_FIELD_IPPROTOCOLCOMMON_STRINGS \
5433 { \
5434  "Tcp", \
5435  "Udp", \
5436  "Igmp", \
5437  "Icmp", \
5438  "Ip6Icmp", \
5439  "Ip6HopByHop", \
5440  "IpInIp", \
5441  "TcpUdp", \
5442  "Unknown", \
5443  "Ip6InIp", \
5444  "MplsInIp" \
5445 }
5446 
5448 typedef enum bcm_field_IpFrag_e {
5456 
5463 
5468 typedef enum bcm_field_L2Format_e {
5478 
5479 #define BCM_FIELD_L2FORMAT_STRINGS \
5480 { \
5481  "Any", \
5482  "EthII", \
5483  "Snap", \
5484  "Llc", \
5485  "802dot3", \
5486  "Deprecated5", \
5487  "MiM" \
5488 }
5489 
5529 
5530 #define BCM_FIELD_OLP_HEADER_TYPE_STRINGS \
5531 { \
5532  "EthCC", \
5533  "EthLmDm", \
5534  "EthOthers", \
5535  "BfdOam", \
5536  "EthOamLm", \
5537  "EthOamDm", \
5538  "BhhOamCcm", \
5539  "BhhOamLm", \
5540  "BhhOamDm", \
5541  "BhhOamOthers", \
5542  "Rfc6374Dlm", \
5543  "Rfc6374Dm", \
5544  "Rfc6374DlmPlusDm", \
5545  "Rfc6374Ilm", \
5546  "Rfc6374IlmPlusDm", \
5547  "Sat", \
5548  "OtherAch", \
5549  "EthOamUpMepCcm", \
5550  "EthOamUpMepLm", \
5551  "EthOamUpMepDm", \
5552  "EthOamUpMepOthers", \
5553  "UpSat", \
5554  "MacSecEncrypt", \
5555  "MacSecDecrypt" \
5556 }
5557 
5583 
5584 #define BCM_FIELD_OAM_DOMAIN_STRINGS \
5585 { \
5586  "CVlan", \
5587  "SVlan", \
5588  "DoubleVlan", \
5589  "PbbTe", \
5590  "MplsLmDmSectionPort", \
5591  "MplsLmDmSectionInnerVlan", \
5592  "MplsLmDmSectionOuterVlan", \
5593  "MplsLmDmSectionOuterPlusInnerVlan", \
5594  "MplsLmDmPw", \
5595  "MplsLmDmLspLabel" \
5596 }
5597 
5653 
5654 #define BCM_FIELD_OAM_DROP_MEP_TYPE_STRINGS \
5655 { \
5656  "Invalid", \
5657  "PortDownMepControl", \
5658  "PortDownMepData", \
5659  "InnerVlanDownMepControl", \
5660  "InnerVlanDownMepData", \
5661  "OuterVlanDownMepControl", \
5662  "OuterVlanDownMepData", \
5663  "InnerPlusOuterVlanDownMepControl", \
5664  "InnerPlusOuterVlanDownMepData", \
5665  "InnerVlanUpMepData", \
5666  "OuterVlanUpMepData", \
5667  "InnerPlusOuterVlanUpMepData", \
5668  "SectionPortMepControl", \
5669  "SectionPortMepData", \
5670  "SectionInnerVlanMepControl", \
5671  "SectionInnerVlanMepData", \
5672  "SectionOuterVlanMepControl", \
5673  "SectionOuterVlanMepData", \
5674  "SectionInnerPlusOuterVlanMepControl", \
5675  "SectionInnerPlusOuterVlanMepData", \
5676  "LSPMepControl", \
5677  "LSPMepData", \
5678  "PwMepControl", \
5679  "PwMepData" \
5680 }
5681 
5696 
5697 #define BCM_FIELD_PKTFWDTYPE_STRINGS \
5698 { \
5699  "L2", \
5700  "L3Ucast", \
5701  "L3Mcast", \
5702  "CopyToCpu", \
5703  "L2Ucast", \
5704  "L2Mcast", \
5705  "L3Any" \
5706 }
5707 
5709 typedef struct bcm_field_llc_header_s {
5714 
5716 typedef struct bcm_field_snap_header_s {
5720 
5727 #define BCM_FIELD_RANGE_SRCPORT 0x00000001
5728 #define BCM_FIELD_RANGE_DSTPORT 0x00000002
5729 #define BCM_FIELD_RANGE_TCP 0x00000004
5730 #define BCM_FIELD_RANGE_UDP 0x00000008
5731 #define BCM_FIELD_RANGE_INVERT 0x00000010
5733 #define BCM_FIELD_RANGE_EXTERNAL 0x00000020
5736 #define BCM_FIELD_RANGE_OUTER_VLAN 0x00000040
5737 #define BCM_FIELD_RANGE_INNER_VLAN 0x00000080
5738 #define BCM_FIELD_RANGE_PACKET_LENGTH 0x00000100
5739 #define BCM_FIELD_RANGE_LOOKUP 0x00000200
5741 #define BCM_FIELD_RANGE_OUT_VPORT 0x00000400
5742 #define BCM_FIELD_RANGE_REPLACE 0x00000800
5750 typedef uint32 bcm_field_range_t;
5751 
5753 typedef struct bcm_field_udf_spec_s {
5756 
5758 typedef struct bcm_field_qset_s {
5759  SHR_BITDCL w[_SHR_BITDCLSIZE(BCM_FIELD_QUALIFY_MAX)];
5760  SHR_BITDCL udf_map[_SHR_BITDCLSIZE(BCM_FIELD_USER_NUM_UDFS)];
5762 
5763 #define BCM_FIELD_QSET_INIT(qset) \
5764  sal_memset(&(qset), 0, sizeof(bcm_field_qset_t))
5765 
5766 #define BCM_FIELD_QSET_ADD(qset, q) SHR_BITSET(((qset).w), (q))
5767 
5768 #define BCM_FIELD_QSET_REMOVE(qset, q) SHR_BITCLR(((qset).w), (q))
5769 
5770 #define BCM_FIELD_QSET_TEST(qset, q) SHR_BITGET(((qset).w), (q))
5771 
5779 #define BCM_FIELD_GROUP_PRIO_ANY -0x7fffffff
5780 
5787 #define BCM_FIELD_COPYTOCPU_GREEN_PACKET 0x00000001
5790 #define BCM_FIELD_COPYTOCPU_YELLOW_PACKET 0x00000002
5793 #define BCM_FIELD_COPYTOCPU_RED_PACKET 0x00000004
5796 #define BCM_FIELD_COPYTOCPU_ALL_PACKET 0x00000007
5799 #define BCM_FIELD_COPYTOCPU_TRUNCATE 0x00000008
5801 #define BCM_FIELD_COPYTOCPU_GREEN_DROPPED_PACKET 0x00000010
5803 #define BCM_FIELD_COPYTOCPU_YELLOW_DROPPED_PACKET 0x00000020
5805 #define BCM_FIELD_COPYTOCPU_RED_DROPPED_PACKET 0x00000040
5807 #define BCM_FIELD_COPYTOCPU_DROPPED_PACKET 0x00000070
5809 #define BCM_FIELD_COPYTOCPU_GREEN_NOT_DROPPED_PACKET 0x00000080
5812 #define BCM_FIELD_COPYTOCPU_YELLOW_NOT_DROPPED_PACKET 0x00000100
5815 #define BCM_FIELD_COPYTOCPU_RED_NOT_DROPPED_PACKET 0x00000200
5818 #define BCM_FIELD_COPYTOCPU_NOT_DROPPED_PACKET 0x00000380
5822 typedef struct bcm_field_CopyToCpu_config_s {
5826 
5833 #define BCM_FIELD_REDIRECT_GREEN_PACKET 0x00000001
5836 #define BCM_FIELD_REDIRECT_YELLOW_PACKET 0x00000002
5839 #define BCM_FIELD_REDIRECT_RED_PACKET 0x00000004
5842 #define BCM_FIELD_REDIRECT_ALL_PACKET 0x00000007
5844 #define BCM_FIELD_REDIRECT_TRUNCATE 0x00000008
5846 #define BCM_FIELD_REDIRECT_SOURCE_USE_ORIGINAL_SOURCE 0x00000010
5849 #define BCM_FIELD_REDIRECT_SOURCE_USE_ORIGINAL_DESTINATION 0x00000020
5853 #define BCM_FIELD_REDIRECT_SOURCE_USE_CONFIGURED 0x00000040
5856 #define BCM_FIELD_REDIRECT_GREEN_DROPPED_PACKET 0x00000080
5858 #define BCM_FIELD_REDIRECT_YELLOW_DROPPED_PACKET 0x00000100
5860 #define BCM_FIELD_REDIRECT_RED_DROPPED_PACKET 0x00000200
5862 #define BCM_FIELD_REDIRECT_DROPPED_PACKET 0x00000380
5864 #define BCM_FIELD_REDIRECT_GREEN_NOT_DROPPED_PACKET 0x00000400
5867 #define BCM_FIELD_REDIRECT_YELLOW_NOT_DROPPED_PACKET 0x00000800
5870 #define BCM_FIELD_REDIRECT_RED_NOT_DROPPED_PACKET 0x00001000
5873 #define BCM_FIELD_REDIRECT_NOT_DROPPED_PACKET 0x00001C00
5882 typedef enum bcm_field_redirect_destination_type_e {
5890 
5891 #define BCM_FIELD_REDIRECTION_STRINGS \
5892 { \
5893  "Invalid", \
5894  "Port", \
5895  "Trunk", \
5896  "MCast", \
5897  "L3Multicast" \
5898 }
5899 
5910 
5918 
5919 #define BCM_FIELD_FLOWTRACKER_TIMESTAMP_DELAY_MODE_STRINGS \
5920 { \
5921  "bcmFieldFlowtrackerTimestampDelayModeGeneric", \
5922  "bcmFieldFlowtrackerTimestampDelayModeNTP", \
5923  "bcmFieldFlowtrackerTimestampDelayModePTP" \
5924 }
5925 
5932 
5933 #define BCM_FIELD_FLOW_TIMESTAMP_TYPE_STRINGS \
5934 { \
5935  "Ingress", \
5936  "Egress" \
5937 }
5938 
5946 
5947 #define BCM_FIELD_FLOW_TIMESTAMP_SOURCE_STRINGS \
5948 { \
5949  "Legacy", \
5950  "NTP", \
5951  "PTP" \
5952 }
5953 
5955 typedef enum bcm_field_action_e {
7525 
7526 #define BCM_FIELD_ACTION_STRINGS \
7527 { \
7528  "CosQNew", \
7529  "CosQCpuNew", \
7530  "VlanCosQNew", \
7531  "UcastCosQNew", \
7532  "McastCosQNew", \
7533  "PrioPktAndIntCopy", \
7534  "PrioPktAndIntNew", \
7535  "PrioPktAndIntTos", \
7536  "PrioPktAndIntCancel", \
7537  "PrioPktCopy", \
7538  "PrioPktNew", \
7539  "PrioPktTos", \
7540  "PrioPktCancel", \
7541  "PrioIntCopy", \
7542  "PrioIntNew", \
7543  "PrioIntTos", \
7544  "PrioIntCancel", \
7545  "TosNew", \
7546  "TosCopy", \
7547  "TosCancel", \
7548  "DscpNew", \
7549  "DscpCancel", \
7550  "EcnNew", \
7551  "CopyToCpu", \
7552  "CopyToCpuCancel", \
7553  "SwitchToCpuCancel", \
7554  "SwitchToCpuReinstate", \
7555  "TimeStampToCpu", \
7556  "TimeStampToCpuCancel", \
7557  "RedirectPort", \
7558  "RedirectTrunk", \
7559  "RedirectCancel", \
7560  "RedirectPbmp", \
7561  "RedirectIpmc", \
7562  "RedirectMcast", \
7563  "RedirectVlan", \
7564  "RedirectBcastPbmp", \
7565  "EgressMask", \
7566  "EgressPortsAdd", \
7567  "Drop", \
7568  "DropCancel", \
7569  "MirrorOverride", \
7570  "MirrorIngress", \
7571  "MirrorEgress", \
7572  "L3ChangeVlan", \
7573  "L3ChangeVlanCancel", \
7574  "L3ChangeMacDa", \
7575  "L3ChangeMacDaCancel", \
7576  "L3Switch", \
7577  "L3SwitchCancel", \
7578  "AddClassTag", \
7579  "DropPrecedence", \
7580  "RpDrop", \
7581  "RpDropCancel", \
7582  "RpDropPrecedence", \
7583  "RpCopyToCpu", \
7584  "RpCopyToCpuCancel", \
7585  "RpSwitchToCpuCancel", \
7586  "RpSwitchToCpuReinstate", \
7587  "RpTimeStampToCpu", \
7588  "RpTimeStampToCpuCancel", \
7589  "RpDscpNew", \
7590  "RpDscpCancel", \
7591  "RpEcnNew", \
7592  "RpOuterVlanPrioNew", \
7593  "RpInnerVlanPrioNew", \
7594  "RpOuterVlanCfiNew", \
7595  "RpInnerVlanCfiNew", \
7596  "RpPrioPktCopy", \
7597  "RpPrioPktNew", \
7598  "RpPrioPktTos", \
7599  "RpPrioPktCancel", \
7600  "RpCosQNew", \
7601  "RpVlanCosQNew", \
7602  "RpUcastCosQNew", \
7603  "RpMcastCosQNew", \
7604  "RpPrioPktAndIntCopy", \
7605  "RpPrioPktAndIntNew", \
7606  "RpPrioPktAndIntTos", \
7607  "RpPrioPktAndIntCancel", \
7608  "RpPrioIntCopy", \
7609  "RpPrioIntNew", \
7610  "RpPrioIntTos", \
7611  "RpPrioIntCancel", \
7612  "YpDrop", \
7613  "YpDropCancel", \
7614  "YpDropPrecedence", \
7615  "YpCopyToCpu", \
7616  "YpCopyToCpuCancel", \
7617  "YpSwitchToCpuCancel", \
7618  "YpSwitchToCpuReinstate", \
7619  "YpTimeStampToCpu", \
7620  "YpTimeStampToCpuCancel", \
7621  "YpDscpNew", \
7622  "YpDscpCancel", \
7623  "YpEcnNew", \
7624  "YpOuterVlanPrioNew", \
7625  "YpInnerVlanPrioNew", \
7626  "YpOuterVlanCfiNew", \
7627  "YpInnerVlanCfiNew", \
7628  "YpPrioPktCopy", \
7629  "YpPrioPktNew", \
7630  "YpPrioPktTos", \
7631  "YpPrioPktCancel", \
7632  "YpCosQNew", \
7633  "YpVlanCosQNew", \
7634  "YpUcastCosQNew", \
7635  "YpMcastCosQNew", \
7636  "YpPrioPktAndIntCopy", \
7637  "YpPrioPktAndIntNew", \
7638  "YpPrioPktAndIntTos", \
7639  "YpPrioPktAndIntCancel", \
7640  "YpPrioIntCopy", \
7641  "YpPrioIntNew", \
7642  "YpPrioIntTos", \
7643  "YpPrioIntCancel", \
7644  "UpdateCounter", \
7645  "MeterConfig", \
7646  "ColorIndependent", \
7647  "ClassDestSet", \
7648  "ClassSourceSet", \
7649  "VrfSet", \
7650  "InnerVlanNew", \
7651  "InnerVlanPrioNew", \
7652  "InnerVlanDelete", \
7653  "OuterVlanDelete", \
7654  "OuterVlanDeleteCancel", \
7655  "InnerVlanAdd", \
7656  "InnerVlanCfiNew", \
7657  "OuterVlanNew", \
7658  "OuterVlanAdd", \
7659  "OuterVlanAddCancel", \
7660  "OuterVlanLookup", \
7661  "OuterVlanPrioNew", \
7662  "OuterVlanCfiNew", \
7663  "OuterTpidNew", \
7664  "GpDrop", \
7665  "GpDropCancel", \
7666  "GpDropPrecedence", \
7667  "GpCopyToCpu", \
7668  "GpCopyToCpuCancel", \
7669  "GpSwitchToCpuCancel", \
7670  "GpSwitchToCpuReinstate", \
7671  "GpTimeStampToCpu", \
7672  "GpTimeStampToCpuCancel", \
7673  "GpDscpNew", \
7674  "GpDscpCancel", \
7675  "GpEcnNew", \
7676  "GpTosPrecedenceNew", \
7677  "GpTosPrecedenceCopy", \
7678  "GpOuterVlanPrioNew", \
7679  "GpInnerVlanPrioNew", \
7680  "GpOuterVlanCfiNew", \
7681  "GpInnerVlanCfiNew", \
7682  "GpPrioPktCopy", \
7683  "GpPrioPktNew", \
7684  "GpPrioPktTos", \
7685  "GpPrioPktCancel", \
7686  "GpCosQNew", \
7687  "GpVlanCosQNew", \
7688  "GpUcastCosQNew", \
7689  "GpMcastCosQNew", \
7690  "GpPrioPktAndIntCopy", \
7691  "GpPrioPktAndIntNew", \
7692  "GpPrioPktAndIntTos", \
7693  "GpPrioPktAndIntCancel", \
7694  "GpPrioIntCopy", \
7695  "GpPrioIntNew", \
7696  "GpPrioIntTos", \
7697  "GpPrioIntCancel", \
7698  "DoNotChangeTtl", \
7699  "DoNotCheckUrpf", \
7700  "DoNotCheckVlan", \
7701  "DoNotLearn", \
7702  "IpFix", \
7703  "IpFixCancel", \
7704  "IncomingMplsPortSet", \
7705  "Deprecated177", \
7706  "NewClassId", \
7707  "Deprecated179", \
7708  "Deprecated180", \
7709  "Deprecated181", \
7710  "Deprecated182", \
7711  "Deprecated183", \
7712  "Deprecated184", \
7713  "Deprecated185", \
7714  "MultipathHash", \
7715  "IpfixRate", \
7716  "OffloadRedirect", \
7717  "OffloadClassSet", \
7718  "OffloadDropIndication", \
7719  "OamUpMep", \
7720  "OamTx", \
7721  "OamLmepMdl", \
7722  "OamServicePriMappingPtr", \
7723  "OamLmBasePtr", \
7724  "OamDmEnable", \
7725  "OamLmEnable", \
7726  "OamLmepEnable", \
7727  "OamPbbteLookupEnable", \
7728  "SrcMacNew", \
7729  "DstMacNew", \
7730  "VnTagNew", \
7731  "VnTagDelete", \
7732  "Deprecated204", \
7733  "Deprecated205", \
7734  "VportNew", \
7735  "VportSpcpNew", \
7736  "VportCpcpNew", \
7737  "VportTcNew", \
7738  "VportDpNew", \
7739  "RedirectVportPort", \
7740  "MacDaKnown", \
7741  "Filters", \
7742  "FabricQueue", \
7743  "CnmCancel", \
7744  "DynamicHgTrunkCancel", \
7745  "EgressMirrorDisable", \
7746  "MultipathHashAdditionalInfo", \
7747  "Deprecated219", \
7748  "MirrorEgressDisable", \
7749  "OuterVlanCopyInner", \
7750  "OuterVlanPrioCopyInner", \
7751  "OuterVlanCfiCopyInner", \
7752  "InnerVlanCopyOuter", \
7753  "InnerVlanPrioCopyOuter", \
7754  "InnerVlanCfiCopyOuter", \
7755  "CompressSrcIp6", \
7756  "CompressDstIp6", \
7757  "ServicePoolIdNew", \
7758  "UseGlobalMeterColor", \
7759  "RedirectEgrNextHop", \
7760  "TrunkLoadBalanceCancel", \
7761  "EcmpLoadBalanceCancel", \
7762  "DoNotOverride", \
7763  "EgressClassSelect", \
7764  "HiGigClassSelect", \
7765  "OamDmTimeFormat", \
7766  "OamLmDmSampleEnable", \
7767  "OamTagStatusCheck", \
7768  "OamTunnelControl", \
7769  "Regex", \
7770  "NoRegex", \
7771  "Stat0", \
7772  "PolicerLevel0", \
7773  "PolicerLevel1", \
7774  "PolicerGroup", \
7775  "StatGroup", \
7776  "VSQ", \
7777  "IntPriorityAndDropPrecedence", \
7778  "ISQ", \
7779  "Trap", \
7780  "UsePolicerResult", \
7781  "Stat1", \
7782  "StatTag", \
7783  "Snoop", \
7784  "TtlSet", \
7785  "IncomingIpIfSet", \
7786  "OrientationSet", \
7787  "TrunkHashKeySet", \
7788  "DstRpfGportNew", \
7789  "DhcpPkt", \
7790  "SrcGportNew", \
7791  "ForwardingTypeNew", \
7792  "StartPacketStrip", \
7793  "SystemHeaderSet", \
7794  "VSwitchNew", \
7795  "LearnSrcMacNew", \
7796  "LearnSrcPortNew", \
7797  "LearnForwardingVlanIdNew", \
7798  "QosMapIdNew", \
7799  "VlanActionSetNew", \
7800  "VlanTranslationValueSet", \
7801  "TunnelTerminatedValueSet", \
7802  "MplsTerminatedValueSet", \
7803  "IpTunnelValueSet", \
7804  "L2SrcValueSet", \
7805  "L2DestValueSet", \
7806  "L3SrcRouteValueSet", \
7807  "L3DestRouteValueSet", \
7808  "IpmcValueSet", \
7809  "CascadedKeyValueSet", \
7810  "IngressGportSet", \
7811  "ExternalValue0Set", \
7812  "ExternalValue1Set", \
7813  "ExternalValue2Set", \
7814  "ExternalValue3Set", \
7815  "NatCancel", \
7816  "Nat", \
7817  "NatEgressOverride", \
7818  "RegexActionCancel", \
7819  "PortPrioIntCosQNew", \
7820  "RpPortPrioIntCosQNew", \
7821  "YpPortPrioIntCosQNew", \
7822  "GpPortPrioIntCosQNew", \
7823  "YpMirrorIngress", \
7824  "YpRedirectPort", \
7825  "Deprecated297", \
7826  "FibreChanSrcBindEnable", \
7827  "FibreChanFpmaPrefixCheckEnable", \
7828  "FibreChanZoneCheckEnable", \
7829  "FibreChanVsanId", \
7830  "FibreChanZoneCheckActionCancel", \
7831  "FibreChanIntVsanPri", \
7832  "LearnInVPortNew", \
7833  "OamDomain", \
7834  "OamOlpHeaderAdd", \
7835  "OamSessionId", \
7836  "OuterVlanCfiCancel", \
7837  "InnerVlanPriCancel", \
7838  "PrioIntRemark", \
7839  "UseDefaultWred", \
7840  "HashValueSet", \
7841  "L3IngressSet", \
7842  "InterfaceClassVPort", \
7843  "IngSampleEnable", \
7844  "EgrSampleEnable", \
7845  "HashSelect0", \
7846  "HashSelect1", \
7847  "TrunkResilientHashCancel", \
7848  "HgTrunkResilientHashCancel", \
7849  "EcmpResilientHashCancel", \
7850  "UnmodifiedPacketRedirectPort", \
7851  "EtagNew", \
7852  "EtagDelete", \
7853  "PfcClassNew", \
7854  "RpIntCongestionNotificationNew", \
7855  "YpIntCongestionNotificationNew", \
7856  "GpIntCongestionNotificationNew", \
7857  "RpHGCongestionClassNew", \
7858  "YpHGCongestionClassNew", \
7859  "GpHGCongestionClassNew", \
7860  "RedirDropPrecedence", \
7861  "RpRedirDropPrecedence", \
7862  "YpRedirDropPrecedence", \
7863  "GpRedirDropPrecedence", \
7864  "HiGigDstModuleGportNew", \
7865  "HiGigDstPortGportNew", \
7866  "HiGigDstGportNew", \
7867  "GpHiGigDropPrecedenceNew", \
7868  "YpHiGigDropPrecedenceNew", \
7869  "RpHiGigDropPrecedenceNew", \
7870  "HiGigDropPrecedenceNew", \
7871  "GpHiGigIntPriNew", \
7872  "YpHiGigIntPriNew", \
7873  "RpHiGigIntPriNew", \
7874  "HiGigIntPriNew", \
7875  "LoopbackSrcModuleGportNew", \
7876  "LoopbackSrcPortGportNew", \
7877  "LoopbackSrcGportNew", \
7878  "LoopbackCpuMasqueradePktProfileNew", \
7879  "LoopbackPacketProcessingPortNew", \
7880  "LoopBackTypeNew", \
7881  "RecoverableDropCancel", \
7882  "StackingRouteNew", \
7883  "PphPresentSet", \
7884  "VxlanHeaderBits8_31_Set", \
7885  "VxlanHeaderBits56_63_Set", \
7886  "FabricHeaderSet", \
7887  "Oam", \
7888  "VpnSet", \
7889  "L3DestRoutePublicValueSet", \
7890  "L3SrcRoutePublicValueSet", \
7891  "ClassZero", \
7892  "ClassOne", \
7893  "TrapReduced", \
7894  "GroupClassSet", \
7895  "EgressPbmpNullCopyToCpu", \
7896  "PimBidirFwd", \
7897  "DscpMapNew", \
7898  "Reserved370", \
7899  "Reserved371", \
7900  "Reserved372", \
7901  "Reserved373", \
7902  "FabricEHAddOrUpdate", \
7903  "Dot1pPreserve", \
7904  "GpDot1pPreserve", \
7905  "YpDot1pPreserve", \
7906  "RpDot1pPreserve", \
7907  "DscpPreserve", \
7908  "GpDscpPreserve", \
7909  "YpDscpPreserve", \
7910  "RpDscpPreserve", \
7911  "ChangeL2FieldsCancel", \
7912  "BFDSessionIdNew", \
7913  "CosMapNew", \
7914  "GpCosMapNew", \
7915  "YpCosMapNew", \
7916  "RpCosMapNew", \
7917  "VxlanHeaderFlags", \
7918  "ChangeL2Fields", \
7919  "ExactMatchClassId", \
7920  "PfcTx", \
7921  "SwitchEncap", \
7922  "StatVportNew", \
7923  "UcastQueueNew", \
7924  "RpUcastQueueNew", \
7925  "YpUcastQueueNew", \
7926  "GpUcastQueueNew", \
7927  "IntCosUcastQueueNew", \
7928  "RpIntCosUcastQueueNew", \
7929  "YpIntCosUcastQueueNew", \
7930  "GpIntCosUcastQueueNew", \
7931  "HgTrunkRandomRoundRobinHashCancel", \
7932  "TrunkRandomRoundRobinHashCancel", \
7933  "EcmpRandomRoundRobinHashCancel", \
7934  "PacketTraceEnable", \
7935  "Strength", \
7936  "RedirectBufferPriority", \
7937  "RedirectPrioIntNew", \
7938  "RpRedirectPrioIntNew", \
7939  "YpRedirectPrioIntNew", \
7940  "GpRedirectPrioIntNew", \
7941  "UntaggedPacketPriorityNew", \
7942  "DoNotCutThrough", \
7943  "LoopbackOamResponse", \
7944  "LoopbackSatResponse", \
7945  "OamStatObjectSessionId", \
7946  "ServicePrioIntCosQNew", \
7947  "RpServicePrioIntCosQNew", \
7948  "YpServicePrioIntCosQNew", \
7949  "GpServicePrioIntCosQNew", \
7950  "ProtectionSwitchingDrop", \
7951  "ServicePoolIdPrecedenceNew", \
7952  "SwapMacDaSa", \
7953  "SwapSourceIPDestIP", \
7954  "ReplaceTtl", \
7955  "PacketIsL3SAT", \
7956  "ReplaceSrcMac", \
7957  "ReplaceDstMac", \
7958  "ReplaceInnerVlan", \
7959  "ReplaceOuterVlan", \
7960  "ReplaceInnerVlanPriority", \
7961  "ReplaceOuterVlanPriority", \
7962  "StatAndPolicer", \
7963  "SnoopAndTrap", \
7964  "IEEE1588", \
7965  "ExternalValue4Set", \
7966  "ExternalValue5Set", \
7967  "Forward", \
7968  "TrapCodeQualifier", \
7969  "PphSnoopCode", \
7970  "EgressTimeStampInsert", \
7971  "IngressTimeStampInsert", \
7972  "IngressTimeStampInsertCancel", \
7973  "EgressTimeStampInsertCancel", \
7974  "MplsLabel1ExpNew", \
7975  "DynamicEcmpEnable", \
7976  "DynamicTrunkEnable", \
7977  "DynamicTrunkCancel", \
7978  "Dgm", \
7979  "DgmThreshold", \
7980  "DgmBias", \
7981  "DgmCost", \
7982  "StaggeredValue0Set", \
7983  "StaggeredValue1Set", \
7984  "StaggeredValue2Set", \
7985  "StaggeredValue3Set", \
7986  "StaggeredDirectValueSet", \
7987  "StaggeredPreselProfile0Set", \
7988  "StaggeredPreselProfile1Set", \
7989  "StaggeredPreselProfile2Set", \
7990  "StaggeredPreselProfile3Set", \
7991  "StaggeredPreselProfileDirectSet", \
7992  "EnableVlanCheck", \
7993  "AdmitProfile", \
7994  "DynamicHgTrunkEnable", \
7995  "VxlanTerminate", \
7996  "UseTunnelPayload", \
7997  "VlanActions", \
7998  "SRDuplicateDrop", \
7999  "SRDuplicateDropCancel", \
8000  "SRNetIdFilter", \
8001  "SRNetIdSource", \
8002  "FilterSrcMacPorts", \
8003  "SRCopyToCpu", \
8004  "SRTagAdd", \
8005  "SRTagDelete", \
8006  "SRLanIdNew", \
8007  "SRNetIdNew", \
8008  "SRFlowIdNew", \
8009  "SRFlowPriMapIdNew", \
8010  "MtuSize", \
8011  "StuSize", \
8012  "TsnFlowIdNew", \
8013  "TsnFlowPriMapIdNew", \
8014  "MtuProfileIdNew", \
8015  "StuProfileIdNew", \
8016  "ExternalValue6Set", \
8017  "ExternalValue7Set", \
8018  "EsmSearchKeySrcMac", \
8019  "TrunkResilientHashEnable", \
8020  "TrunkResilientHashDisable", \
8021  "EcmpResilientHashEnable", \
8022  "EcmpResilientHashDisable", \
8023  "HiGigTrunkResilientHashEnable", \
8024  "HiGigTrunkResilientHashDisable", \
8025  "MacSecDecrypt", \
8026  "MacSecEncrypt", \
8027  "MacSecSubPortNumAdd", \
8028  "MacSecPktTypeSet", \
8029  "LatencyFlowId", \
8030  "IntEncapEnable", \
8031  "IntTurnAround", \
8032  "MacSecRedirectIpmc", \
8033  "AddIngOuterVlanToEgrOuterVlan", \
8034  "Erspan3HdrVlanCosPktCopy", \
8035  "Erspan3HdrGbpSrcIdAdd", \
8036  "Erspan3HdrUdf2Add", \
8037  "RoeFrameTypeSet", \
8038  "FlowtrackerGroupId", \
8039  "StatisticPtr0", \
8040  "StatisticPtr1", \
8041  "TafGatePriMap", \
8042  "IntEncapUpdate", \
8043  "MplsLookupEnable", \
8044  "TerminationAllowed", \
8045  "MatchPbmpDrop", \
8046  "MatchPbmpRedirect", \
8047  "IntEncapDisable", \
8048  "ElephantLookupEnable", \
8049  "ElephantLookupDisable", \
8050  "ElephantColorEnable", \
8051  "ElephantColorDisable", \
8052  "ElephantQueueEnable", \
8053  "ElephantQueueDisable", \
8054  "LatencyMonitorEnable", \
8055  "LatencyMonitorDisable", \
8056  "OamLmCounterPoolId", \
8057  "LoopbackType", \
8058  "VisibilityEnable", \
8059  "DlbEcmpMonitorEnable", \
8060  "MirrorZeroingEnable", \
8061  "NshEncapEnable", \
8062  "NshServicePathId", \
8063  "NshServiceIndex", \
8064  "L3IngressStrengthSet", \
8065  "GbpClassifierAdd", \
8066  "GbpSrcIdNew", \
8067  "AssignOpaqueObject1", \
8068  "AssignOpaqueObject2", \
8069  "AssignOpaqueObject3", \
8070  "AssignOpaqueObject4", \
8071  "AssignExtractionCtrlId", \
8072  "AssignEditCtrlId", \
8073  "FlowtrackerEnable", \
8074  "FlowtrackerNewLearnEnable", \
8075  "CosMapSelect", \
8076  "GbpSrcMacMcastBitSet", \
8077  "GbpDstIdNew", \
8078  "LoopbackSubtype", \
8079  "EgressFlowControlEnable", \
8080  "EgressFlowEncapEnable", \
8081  "SystemHeaderSizeAdjust", \
8082  "InVportClass0", \
8083  "InVportClass1", \
8084  "NetworkQos", \
8085  "Void", \
8086  "Container", \
8087  "ParsingStartType", \
8088  "ParsingStartOffset", \
8089  "EgressForwardingIndex", \
8090  "UDHData0", \
8091  "UDHData1", \
8092  "UDHData2", \
8093  "UDHData3", \
8094  "UDHBase0", \
8095  "UDHBase1", \
8096  "UDHBase2", \
8097  "UDHBase3", \
8098  "UDHBase", \
8099  "IPTProfile", \
8100  "IPTCommand", \
8101  "StatId0", \
8102  "StatId1", \
8103  "StatId2", \
8104  "StatId3", \
8105  "StatId4", \
8106  "StatId5", \
8107  "StatId6", \
8108  "StatId7", \
8109  "StatId8", \
8110  "StatId9", \
8111  "StatProfile0", \
8112  "StatProfile1", \
8113  "StatProfile2", \
8114  "StatProfile3", \
8115  "StatProfile4", \
8116  "StatProfile5", \
8117  "StatProfile6", \
8118  "StatProfile7", \
8119  "StatProfile8", \
8120  "StatProfile9", \
8121  "InvalidNext", \
8122  "IngressDoNotLearn", \
8123  "EgressDoNotLearn", \
8124  "DstRpf", \
8125  "DstRpfValid", \
8126  "VisibilityClear", \
8127  "StatMetaData", \
8128  "AceEntryId", \
8129  "InVport0", \
8130  "InVport1", \
8131  "OutVport0", \
8132  "OutVport1", \
8133  "OutVport2", \
8134  "OutVport3", \
8135  "ExtStat0", \
8136  "ExtStat1", \
8137  "ExtStat2", \
8138  "ExtStat3", \
8139  "ForwardingTypeMeterMap", \
8140  "StatSampling", \
8141  "StatOamLM", \
8142  "ForwardingLayerIndex", \
8143  "InInterface0", \
8144  "InInterface1", \
8145  "OutInterface0", \
8146  "OutInterface1", \
8147  "OutInterface2", \
8148  "OutInterface3", \
8149  "TrapStrength", \
8150  "SnoopStrength", \
8151  "OutPortTrafficManagement", \
8152  "AceContextValue", \
8153  "BierStringOffset", \
8154  "BierStringSize", \
8155  "PacketIsBier", \
8156  "Eventor", \
8157  "ForwardingAdditionalInfo", \
8158  "SmallExemLearn", \
8159  "LargeExemLearn", \
8160  "GroupLookupDisable", \
8161  "OamCopyToCpu", \
8162  "GpOamCopyToCpu", \
8163  "YpOamCopyToCpu", \
8164  "RpOamCopyToCpu", \
8165  "InVport0Raw", \
8166  "InVport1Raw", \
8167  "OutVport0Raw", \
8168  "OutVport1Raw", \
8169  "OutVport2Raw", \
8170  "OutVport3Raw", \
8171  "AppendPointerCompensation", \
8172  "AssignNatClassId", \
8173  "AssignChangeL2FieldsClassId", \
8174  "IngressTimeStampInsertValid", \
8175  "MacSecDecryptPktType", \
8176  "MacSecEncryptPktType", \
8177  "MacSecUseSubportNumberFromEvxlt", \
8178  "MacSecModidBase", \
8179  "FlowtrackerTimestampDelayMode", \
8180  "SnoopRaw", \
8181  "DropPrecedenceRaw", \
8182  "FabricHeaderSetRaw", \
8183  "SrcGportNewRaw", \
8184  "LatencyFlowIdRaw", \
8185  "MirrorIngressRaw", \
8186  "OamRaw", \
8187  "TrapRaw", \
8188  "VrfSetRaw", \
8189  "StatProfile0Raw", \
8190  "StatProfile1Raw", \
8191  "StatProfile2Raw", \
8192  "StatProfile3Raw", \
8193  "StatProfile4Raw", \
8194  "StatProfile5Raw", \
8195  "StatProfile6Raw", \
8196  "StatProfile7Raw", \
8197  "StatProfile8Raw", \
8198  "StatProfile9Raw", \
8199  "ExtStat0Raw", \
8200  "ExtStat1Raw", \
8201  "ExtStat2Raw", \
8202  "ExtStat3Raw", \
8203  "StatSamplingRaw", \
8204  "StartPacketStripRaw", \
8205  "ParsingStartTypeRaw", \
8206  "ParsingStartOffsetRaw", \
8207  "IPTCommandRaw", \
8208  "MirrorEgressRaw", \
8209  "TrapStrengthRaw", \
8210  "SnoopStrengthRaw", \
8211  "AceContextValueRaw", \
8212  "Stat0Raw", \
8213  "Stat1Raw", \
8214  "IpMulticastCompatible", \
8215  "RpfOutVport", \
8216  "RpfOutInterface", \
8217  "RpfOutVportRaw", \
8218  "MirrorOnDropEnable", \
8219  "MirrorOnDropProfileSet", \
8220  "LearnRaw0", \
8221  "LearnRaw1", \
8222  "LearnRaw2", \
8223  "LearnRaw3", \
8224  "LearnRaw4", \
8225  "IngressDstTypeSelect", \
8226  "IngressDstVal", \
8227  "DlbEcmpAlternatePathEnable", \
8228  "DlbEcmpMonitorDisable", \
8229  "DlbTrunkAlternatePathEnable", \
8230  "DlbTrunkMonitorDisable", \
8231  "DlbTrunkMonitorEnable", \
8232  "SrcNetworkGroup", \
8233  "DoNotModify", \
8234  "SvpNew", \
8235  "IntCongestionNotification", \
8236  "Color", \
8237  "MyStationHit", \
8238  "TunnelOuterVlanNew", \
8239  "PktTraceIdx", \
8240  "AssignOpaqueObject0", \
8241  "IntSampleThreshold", \
8242  "DstRpfGportNewValid", \
8243  "DstRpfGportNewRaw", \
8244  "IntResidenceTimeEnable", \
8245  "DgmTrunkPriPathThreshold", \
8246  "DgmTrunkAltPathCost", \
8247  "DgmTrunkAltPathBias", \
8248  "DgmEcmpPriPathThreshold", \
8249  "DgmEcmpAltPathCost", \
8250  "DgmEcmpAltPathBias", \
8251  "InsertHiGig3Ext0", \
8252  "PacketStatus", \
8253  "ForwardingStatus", \
8254  "IntStatReq0", \
8255  "IntStatReq1", \
8256  "SvtagSignature", \
8257  "SvtagOffset", \
8258  "SvtagPrio", \
8259  "SvtagDeviceId", \
8260  "SvtagPktType", \
8261  "SvtagSubportNum", \
8262  "SvtagEnable", \
8263  "FlowtrackerAggregateIngressGroupId", \
8264  "FlowtrackerAggregateMmuGroupId", \
8265  "FlowtrackerAggregateEgressGroupId", \
8266  "FlowtrackerAggregateClass", \
8267  "FlowtrackerAggregateIngressFlowIndex", \
8268  "FlowtrackerAggregateMmuFlowIndex", \
8269  "FlowtrackerAggregateEgressFlowIndex", \
8270  "FlexSampleProfile", \
8271  "StatOamLMRaw", \
8272  "LearnKey0", \
8273  "LearnKey1", \
8274  "LearnKey2", \
8275  "LearnKey2Raw", \
8276  "LearnPayload0", \
8277  "LearnPayload1", \
8278  "LearnEntryFormatIndex", \
8279  "LearnOrTransplant", \
8280  "EncapIfaMetadataHdr", \
8281  "StatGroupWithoutCounterIndex", \
8282  "PrioInputNew", \
8283  "OuterVlanTagActions", \
8284  "InnerVlanTagActions", \
8285  "TunnelOuterVlanTagActions", \
8286  "EgressIFAMetadataProfileIndex", \
8287  "FlowTimestampType", \
8288  "FlowTimestampSource0", \
8289  "FlowTimestampSource1", \
8290  "CmlFlagsNew", \
8291  "CmlFlagsMove", \
8292  "OpaqueCtrlId", \
8293  "MirrorOnDropDisable", \
8294  "MirrorFlowClass", \
8295  "IntActionProfileSet", \
8296  "IntTermActionProfileSet", \
8297  "IntFlowClassSet", \
8298  "IntApplyOnSampledPkt", \
8299  "IntLoopbackProfileSet", \
8300  "L3TunnelTypeSet", \
8301  "L3TunnelAuto", \
8302  "UseOuterHeaderDscp", \
8303  "UseOuterHeaderTtl", \
8304  "DisableInnerHeaderDscpChange", \
8305  "PhbRemapTableEntryId", \
8306  "BfdEnable", \
8307  "DscpMask", \
8308  "EcnMask", \
8309  "VxlanGbpEnable", \
8310  "AssignVxlanGbpId", \
8311  "DstL3ClassIdNew", \
8312  "VlanTagPreserve", \
8313  "GpStatGroup", \
8314  "YpStatGroup", \
8315  "RpStatGroup", \
8316  "GpOpaqueCtrlId", \
8317  "YpOpaqueCtrlId", \
8318  "RpOpaqueCtrlId", \
8319  "MatchedRule", \
8320  "RedirectEgrNextHopUnderlay", \
8321  "AssignIfaHeaderFields", \
8322  "RespondPdelayReq", \
8323  "SendPacketBack", \
8324  "AssignRecircleHdrOpaqueObject", \
8325  "RecircleHdrCode", \
8326  "RecircleHdrOpaqueCtrlId", \
8327  "OverrideTraceEvent", \
8328  "PktLengthAdjustProfileIndex", \
8329  "IpTunnelProtocolNew", \
8330  "EgressPostOperation", \
8331  "AssignMacSecOpaque", \
8332  "EgressMembershipCheck", \
8333  "EgrTimestampProfileIndex", \
8334  "PolicerCancel" \
8335 }
8336 
8350 
8361 
8367 
8374 
8383 
8395 
8396 #define BCM_FIELD_ROE_FRAME_TYPE_STRINGS \
8397 { \
8398  "None", \
8399  "Roe", \
8400  "Custom" \
8401 }
8402 
8412 
8422 
8430 
8431 #define BCM_FIELD_DOUBLE_ACTION_VALS \
8432 { \
8433  "None", \
8434  "First", \
8435  "Second", \
8436  "Both" \
8437 }
8438 
8451 
8458 
8463 typedef struct bcm_field_aset_s {
8464  SHR_BITDCL w[_SHR_BITDCLSIZE(bcmFieldActionCount)];
8470 
8471 #define BCM_FIELD_ASET_INIT(aset) \
8472  sal_memset(&(aset), 0, sizeof(bcm_field_aset_t))
8473 
8474 #define BCM_FIELD_ASET_ADD(aset, q) SHR_BITSET(((aset).w), (q))
8475 
8476 #define BCM_FIELD_ASET_ADD_WIDTH(aset, q, width_) \
8477  do { \
8478  int __i__ = 0; \
8479  uint8 __new_valid__ = 1; \
8480  SHR_BITSET(((aset).w), (q)); \
8481  for (;(aset).actions_width[__i__].valid != 0;__i__++); \
8482  if (__i__ < 16) { \
8483  sal_memcpy(&((aset).actions_width[__i__].action), &(q), sizeof((q))); \
8484  sal_memcpy(&((aset).actions_width[__i__].width), &(width_), sizeof((width_))); \
8485  sal_memcpy(&((aset).actions_width[__i__].valid), &(__new_valid__), 1); \
8486  } \
8487  } while(0)
8488 
8489 #define BCM_FIELD_ASET_REMOVE(aset, q) SHR_BITCLR(((aset).w), (q))
8490 
8491 #define BCM_FIELD_ASET_TEST(aset, q) SHR_BITGET(((aset).w), (q))
8492 
8497 #define BCM_FIELD_OAM_MATCHED_RULE_ETHERNET_PORT 0x1
8501 #define BCM_FIELD_OAM_MATCHED_RULE_ETHERNET_INNER_VLAN 0x2
8505 #define BCM_FIELD_OAM_MATCHED_RULE_ETHERNET_OUTER_VLAN 0x3
8509 #define BCM_FIELD_OAM_MATCHED_RULE_ETHERNET_INNER_PLUS_OUTER_VLAN 0x4
8518 #define BCM_FIELD_BFD_MATCHED_RULE_MPLS_TUNNEL_PHP 0x1
8523 #define BCM_FIELD_PRESEL_INIT(presel_set) \
8524  sal_memset(&(presel_set), 0, sizeof(bcm_field_presel_set_t))
8525 
8526 #define BCM_FIELD_PRESEL_ADD(presel_set, presel_id) SHR_BITSET(((presel_set).w), (presel_id))
8527 
8528 #define BCM_FIELD_PRESEL_REMOVE(presel_set, presel_id) SHR_BITCLR(((presel_set).w), (presel_id))
8529 
8530 #define BCM_FIELD_PRESEL_TEST(presel_set, presel_id) SHR_BITGET(((presel_set).w), (presel_id))
8531 
8532 #define BCM_FIELD_ACTION_WIDTH_MAX 48
8533 
8534 #define BCM_FIELD_ASET_WIDTH_MAX \
8535  ((BCM_FIELD_ACTION_WIDTH_MAX+1) * \
8536  bcmFieldActionCount + 1)
8537 
8539 #define BCM_FABRIC_QUEUE_CUSTOMER (1U << 29)
8544 #define BCM_FABRIC_QUEUE_QOS_BASE (1U << 30)
8549 #define BCM_FABRIC_QUEUE_DEST_OFFSET (1U << 31)
8553 #define BCM_FIELD_STAT_WIDE_MODE (1 << 0)
8554 #define BCM_FIELD_STAT_SLICE_EN (1 << 1)
8555 #define BCM_FIELD_STAT_COS_QUEUE (1 << 2)
8559 typedef struct bcm_field_class_info_s {
8563 
8565 typedef struct bcm_field_status_s {
8570 
8573 
8576  uint8 name[BCM_FIELD_MAX_NAME_LEN];
8583 
8591 #define BCM_FIELD_SHARED_VLAN_NONE 0
8592 #define BCM_FIELD_SHARED_VLAN_INNER 1
8594 #define BCM_FIELD_SHARED_VLAN_OUTER 2
8598 typedef enum bcm_field_control_e {
8714 
8715 #define BCM_FIELD_CONTROL_STRINGS \
8716 { \
8717  "Stage", \
8718  "ColorIndependent", \
8719  "UdfHigig0", \
8720  "UdfHigig1", \
8721  "UdfHigig2", \
8722  "SharedVlanFieldSet", \
8723  "RedirectIngressVlanCheck", \
8724  "RedirectNonUcastTrunkResolve", \
8725  "RedirectExcludeSrcPort", \
8726  "RedirectPortFloodBlock", \
8727  "RedirectVlanFloodBlock", \
8728  "ArpAsIp", \
8729  "RarpAsIp", \
8730  "IntraDoubleEnable", \
8731  "ExternalUdfEnable", \
8732  "RedirectNonUcastEtherTrunkResolve", \
8733  "RedirectNonUcastFabricTrunkResolve", \
8734  "StatSyncEnable", \
8735  "CascadedKeyWidth", \
8736  "PolicerGroupSharingEnable", \
8737  "RedirectNextHopExcludeSrcPort", \
8738  "IngressLogicalPolicerPoolsMode", \
8739  "EcmpHashOffset", \
8740  "EcmpHashUseCrc", \
8741  "EcmpHashUseUpper5Bits", \
8742  "EcmpHashEnable", \
8743  "OverrideStageLookupPhb", \
8744  "RedirectExcludeEtherSrcPort", \
8745  "RedirectExcludeHiGigSrcPort", \
8746  "ReplacementTtl", \
8747  "LargeDirectLuKeyLength", \
8748  "KeyGenVar", \
8749  "EgressAutoExpandWithPolicer", \
8750  "DlbMonitorIngressRandomSeed", \
8751  "GbpSrcMacMcastBitSet", \
8752  "TrunkDlbMonitorIngressRandomSeed", \
8753  "RedirectPortFloodEnable", \
8754  "RedirectVlanFloodEnable", \
8755  "RedirectSystemPortFloodEnable", \
8756  "RedirectIfpFloodEnable" \
8757 }
8758 
8761  int prio_min;
8762  int prio_max;
8773 
8792 
8793 #define BCM_FIELD_GROUP_MODE_STRINGS \
8794 { \
8795  "Single", \
8796  "Double", \
8797  "Triple", \
8798  "Quad", \
8799  "Auto", \
8800  "Direct", \
8801  "DirectExtraction", \
8802  "Hashing", \
8803  "ExactMatch", \
8804  "IntraSliceDouble" \
8805 }
8806 
8820 
8821 #define BCM_FIELD_INGRESS_POLICER_POOL_MODE_STRINGS \
8822 { \
8823  "bcmFieldIngressLogicalPolicerPools8x1024", \
8824  "bcmFieldIngressLogicalPolicerPools16x512Contiguous", \
8825  "bcmFieldIngressLogicalPolicerPools16x512Split" \
8826 }
8827 
8828 #define bcmFieldGroupModeDefault bcmFieldGroupModeAuto
8829 
8830 #define BCM_FIELD_GROUP_MODE_WIDTH_MAX 24
8831 
8833 #define BCM_FIELD_EGRESS_CLASS_SELECT_PORT 0
8834 #define BCM_FIELD_EGRESS_CLASS_SELECT_SVP 1
8835 #define BCM_FIELD_EGRESS_CLASS_SELECT_L3_IIF 2
8836 #define BCM_FIELD_EGRESS_CLASS_SELECT_FIELD_SRC 3
8837 #define BCM_FIELD_EGRESS_CLASS_SELECT_FIELD_DST 4
8838 #define BCM_FIELD_EGRESS_CLASS_SELECT_L2_SRC 5
8839 #define BCM_FIELD_EGRESS_CLASS_SELECT_L2_DST 6
8840 #define BCM_FIELD_EGRESS_CLASS_SELECT_L3_SRC 7
8841 #define BCM_FIELD_EGRESS_CLASS_SELECT_L3_DST 8
8842 #define BCM_FIELD_EGRESS_CLASS_SELECT_VLAN 9
8843 #define BCM_FIELD_EGRESS_CLASS_SELECT_VRF 10
8844 #define BCM_FIELD_EGRESS_CLASS_SELECT_NEW 11
8845 #define BCM_FIELD_EGRESS_CLASS_SELECT_EM_CLASS_ID 12
8846 #define BCM_FIELD_EGRESS_CLASS_SELECT_COMPRESSION_ID_A 13
8847 #define BCM_FIELD_EGRESS_CLASS_SELECT_COMPRESSION_ID_B 14
8848 
8850 #define BCM_FIELD_L3_TUNNEL_TYPE_IP6TOIP4 0
8851 #define BCM_FIELD_L3_TUNNEL_TYPE_ISATAP 1
8852 #define BCM_FIELD_L3_TUNNEL_TYPE_IP6TOIP4SECURE 2
8855 #define BCM_FIELD_HIGIG_CLASS_SELECT_EGRESS 0
8856 #define BCM_FIELD_HIGIG_CLASS_SELECT_EGR_DVP 1
8857 #define BCM_FIELD_HIGIG_CLASS_SELECT_EGR_L3_INTERFACE 2
8858 #define BCM_FIELD_HIGIG_CLASS_SELECT_EGR_NEXT_HOP 3
8859 #define BCM_FIELD_HIGIG_CLASS_SELECT_PORT 4
8860 
8862 #define BCM_FIELD_OAM_DM_TIME_FORMAT_IEEE1588 0
8863 #define BCM_FIELD_OAM_DM_TIME_FORMAT_NTP 1
8864 
8866 #define BCM_FIELD_OAM_TAG_STATUS_OUTER_MASK (1 << 0)
8867 #define BCM_FIELD_OAM_TAG_STATUS_INNER_MASK (1 << 1)
8868 #define BCM_FIELD_OAM_TAG_STATUS_INNER_L2_OUTER_MASK (1 << 2)
8869 #define BCM_FIELD_OAM_TAG_STATUS_INNER_L2_INNER_MASK (1 << 3)
8870 
8872 #define BCM_FIELD_OAM_TUNNEL_CONTROL_ANY 0
8873 #define BCM_FIELD_OAM_TUNNEL_CONTROL_NOT_TUNNELDED 1
8874 
8876 #define BCM_FIELD_OAM_MUTLICAST_MAC_NO_HIT 0x1
8881 #define BCM_FIELD_OAM_MUTLICAST_MAC_CLASS1_HIT 0x2
8887 #define BCM_FIELD_OAM_MUTLICAST_MAC_CLASS2_HIT 0x3
8895 #define BCM_FIELD_GROUP_CREATE_WITH_ID (1 << 0)
8896 #define BCM_FIELD_GROUP_CREATE_WITH_PORT (1 << 1)
8897 #define BCM_FIELD_GROUP_CREATE_WITH_MODE (1 << 2)
8898 #define BCM_FIELD_GROUP_CREATE_SMALL (1 << 3)
8899 #define BCM_FIELD_GROUP_CREATE_LARGE (1 << 4)
8900 #define BCM_FIELD_GROUP_CREATE_WITH_ASET (1 << 5)
8901 #define BCM_FIELD_GROUP_CREATE_WITH_PRESELSET (1 << 6)
8902 #define BCM_FIELD_GROUP_CREATE_INSERTION_ORDER_LOOSE (1 << 7)
8909 #define BCM_FIELD_GROUP_CREATE_IS_EQUAL (1 << 8)
8917 #define BCM_FIELD_GROUP_CREATE_SPARSE_ENTRY_PRIORITIES (1 << 9)
8923 #define BCM_FIELD_GROUP_CREATE_SINGLE (1 << 10)
8926 #define BCM_FIELD_GROUP_CREATE_IS_CASCADED (1 << 11)
8933 #define BCM_FIELD_GROUP_CREATE_HANDLE_ENTRIES_BY_KEY (1 << 12)
8941 #define BCM_FIELD_GROUP_CREATE_WITH_CYCLE (1 << 13)
8944 #define BCM_FIELD_GROUP_CREATE_WITH_PROGRAMS (1 << 14)
8947 #define BCM_FIELD_GROUP_CREATE_WITH_CE_ID (1 << 15)
8950 #define BCM_FIELD_GROUP_CREATE_WITH_MW_SUPPORT (1 << 16)
8956 #define BCM_FIELD_GROUP_CREATE_WITH_PRESEL_GROUP (1 << 17)
8959 #define BCM_FIELD_GROUP_CREATE_WITH_COMPRESSION (1 << 18)
8966 #define BCM_FIELD_GROUP_ENT_LVL_ACTION_RESOLVE (1 << 19)
8969 #define BCM_FIELD_GROUP_CREATE_WITH_SRC_IP_COMPRESSION (1 << 20)
8973 #define BCM_FIELD_GROUP_CREATE_WITH_SRC_IP6_COMPRESSION (1 << 21)
8977 #define BCM_FIELD_GROUP_CREATE_WITH_DST_IP_COMPRESSION (1 << 22)
8982 #define BCM_FIELD_GROUP_CREATE_WITH_DST_IP6_COMPRESSION (1 << 23)
8988 #define BCM_FIELD_PRESEL_SEL_MAX 1024
8992 #define BCM_FIELD_PRESEL_CREATE_WITH_ID (1 << 0)
8997 typedef struct bcm_field_presel_set_s {
8998  SHR_BITDCL w[_SHR_BITDCLSIZE(BCM_FIELD_PRESEL_SEL_MAX)];
9000 
9001 #define BCM_FIELD_PRESEL_ENTRY_SET(_eid_, _presel_id_) (_eid_ = _presel_id_ | BCM_FIELD_QUALIFY_PRESEL)
9005 typedef uint32 bcm_field_hintid_t;
9006 
9008 #define BCM_FIELD_GROUP_ACTION_RES_ID_DEFAULT -1
9012 typedef enum bcm_field_group_cycle_e {
9017 
9018 #define BCM_FIELD_GROUP_CYCLE_STRINGS \
9019 { \
9020  "Cycle0", \
9021  "Cycle1" \
9022 }
9023 
9026 
9028 #define BCM_FIELD_NOF_PRESEL_PER_FG 32
9032 #define BCM_FIELD_NOF_QUALS_PER_FG 32
9035 #define BCM_FIELD_NOF_CE_ID_PER_QUAL 8
9039 typedef struct bcm_field_qual_ce_info_s {
9044  int ce_id[BCM_FIELD_NOF_CE_ID_PER_QUAL];
9045  int key_index[BCM_FIELD_NOF_CE_ID_PER_QUAL];
9050 
9052 #define BCM_FIELD_DESTINATION_ACTION_REDIRECT 1
9054 #define BCM_FIELD_DESTINATION_ACTION_COLOR 2
9055 #define BCM_FIELD_DESTINATION_ACTION_MIRROR 4
9057 #define BCM_FIELD_DESTINATION_ACTION_COS 8
9060 #define BCM_FIELD_DESTINATION_OPTIONS_REPLACE 1
9064 typedef struct bcm_field_destination_match_s {
9065  int priority;
9082  int int_pri;
9090 
9107 
9108 #ifndef BCM_HIDE_DISPATCHABLE
9109 
9126 extern int bcm_field_presel_create(
9127  int unit,
9128  bcm_field_presel_t *presel_id);
9129 
9147 extern int bcm_field_presel_create_id(
9148  int unit,
9149  bcm_field_presel_t presel_id);
9150 
9151 #endif /* BCM_HIDE_DISPATCHABLE */
9152 
9157  bcm_field_qual_ce_info_t qual_info[BCM_FIELD_NOF_QUALS_PER_FG];
9159 
9168  int nof_presel_info,
9169  bcm_field_group_presel_info_t *presel_info);
9170 
9173 
9189 
9190 #define BCM_FIELD_GROUP_MODE_TYPE_STRINGS \
9191 { \
9192  "Auto", \
9193  "L2Single", \
9194  "L3Single", \
9195  "L3SingleAny", \
9196  "L3Double", \
9197  "L3DoubleAny", \
9198  "L3DoubleAlternate" \
9199 }
9200 
9216 
9217 #define BCM_FIELD_GROUP_PACKET_TYPE_STRINGS \
9218 { \
9219  "Default", \
9220  "Ip", \
9221  "NonIp", \
9222  "Ip4", \
9223  "Ip6", \
9224  "Higig", \
9225  "FrontPanel" \
9226 }
9227 
9236  int priority;
9248  uint8 name[BCM_FIELD_MAX_NAME_LEN];
9259 
9271  int priority;
9286 
9292  int priority;
9304  uint8 name[BCM_FIELD_MAX_NAME_LEN];
9314 
9321  int lsb;
9323  int bits;
9325  int value;
9328 
9336  int bias;
9339 
9343  int param0;
9344  int param1;
9345  int param2;
9346  int param3;
9348 
9354 
9355 #define BCM_ILLEGAL_ACTION_PARAMETER (-1)
9360 typedef enum bcm_field_ArpOpcode_e {
9365 
9366 #define BCM_FIELD_FARPOPCODE_STRINGS \
9367 { \
9368  "Request", \
9369  "Reply" \
9370 }
9371 
9381 
9382 #ifndef BCM_HIDE_DISPATCHABLE
9383 
9398 extern int bcm_field_init(
9399  int unit);
9400 
9414 extern int bcm_field_detach(
9415  int unit);
9416 
9431 extern int bcm_field_control_get(
9432  int unit,
9434  uint32 *state);
9435 
9450 extern int bcm_field_control_set(
9451  int unit,
9453  uint32 state);
9454 
9468  int unit,
9469  bcm_field_stage_t stage_id,
9470  int *slice_count);
9471 
9564  int unit,
9565  bcm_field_stage_t stage_id,
9566  bcm_pbmp_t pbmp,
9567  int slice_no,
9568  bcm_field_stage_slice_info_t *slice_info);
9569 
9585 extern int bcm_field_stage_qset_get(
9586  int unit,
9588  uint8 presel,
9590 
9604 extern int bcm_field_stage_info_get(
9605  int unit,
9608 
9609 #endif /* BCM_HIDE_DISPATCHABLE */
9610 
9617 extern void bcm_field_udf_spec_t_init(
9618  bcm_field_udf_spec_t *udf_spec);
9619 
9620 #ifndef BCM_HIDE_DISPATCHABLE
9621 
9652 extern int bcm_field_group_create(
9653  int unit,
9655  int pri,
9657 
9688 extern int bcm_field_group_create_id(
9689  int unit,
9691  int pri,
9693 
9713  int unit,
9715  int enable);
9716 
9732  int unit,
9734  int *enable);
9735 
9767 extern int bcm_field_group_create_mode(
9768  int unit,
9770  int pri,
9773 
9806  int unit,
9808  int pri,
9811 
9845  int unit,
9846  bcm_port_t port,
9848  int pri,
9851 
9885  int unit,
9886  bcm_port_t port,
9888  int pri,
9891 
9925  int unit,
9926  bcm_pbmp_t pbmp,
9928  int pri,
9931 
9965  int unit,
9966  bcm_pbmp_t pbmp,
9968  int pri,
9971 
10004  int unit,
10006  int pri,
10009 
10042  int unit,
10044  int pri,
10047 
10064 extern int bcm_field_group_mode_get(
10065  int unit,
10068 
10101  int unit,
10102  bcm_field_group_config_t *group_config);
10103 
10112  int unit,
10113  bcm_field_group_config_extension_t *group_config);
10114 
10115 #endif /* BCM_HIDE_DISPATCHABLE */
10116 
10131 extern void bcm_field_group_config_t_init(
10132  bcm_field_group_config_t *group_config);
10133 
10141  bcm_field_group_config_extension_t *group_config);
10142 
10145  int unit,
10147  void *user_data);
10148 
10149 #ifndef BCM_HIDE_DISPATCHABLE
10150 
10164 extern int bcm_field_group_traverse(
10165  int unit,
10166  bcm_field_group_traverse_cb callback,
10167  void *user_data);
10168 
10176 extern int bcm_field_group_flush(
10177  int unit,
10179 
10202 extern int bcm_field_group_set(
10203  int unit,
10206 
10229 extern int bcm_field_group_get(
10230  int unit,
10233 
10256 extern int bcm_field_group_action_set(
10257  int unit,
10259  bcm_field_aset_t aset);
10260 
10283 extern int bcm_field_group_action_get(
10284  int unit,
10286  bcm_field_aset_t *aset);
10287 
10303 extern int bcm_field_group_destroy(
10304  int unit,
10306 
10320 extern int bcm_field_group_compress(
10321  int unit,
10323 
10348  int unit,
10351  int enable);
10352 
10370  int unit,
10373 
10387 extern int bcm_field_group_priority_set(
10388  int unit,
10390  int priority);
10391 
10405 extern int bcm_field_group_priority_get(
10406  int unit,
10408  int *priority);
10409 
10426 extern int bcm_field_group_status_get(
10427  int unit,
10429  bcm_field_group_status_t *status);
10430 
10447 extern int bcm_field_group_enable_set(
10448  int unit,
10450  int enable);
10451 
10468 extern int bcm_field_group_enable_get(
10469  int unit,
10471  int *enable);
10472 
10554 extern int bcm_field_range_create(
10555  int unit,
10557  uint32 flags,
10558  bcm_l4_port_t min,
10559  bcm_l4_port_t max);
10560 
10577 extern int bcm_field_group_install(
10578  int unit,
10580 
10599 extern int bcm_field_group_remove(
10600  int unit,
10602 
10684 extern int bcm_field_range_create_id(
10685  int unit,
10687  uint32 flags,
10688  bcm_l4_port_t min,
10689  bcm_l4_port_t max);
10690 
10754 extern int bcm_field_range_group_create(
10755  int unit,
10757  uint32 flags,
10758  bcm_l4_port_t min,
10759  bcm_l4_port_t max,
10761 
10826  int unit,
10828  uint32 flags,
10829  bcm_l4_port_t min,
10830  bcm_l4_port_t max,
10832 
10890 extern int bcm_field_range_get(
10891  int unit,
10893  uint32 *flags,
10894  bcm_l4_port_t *min,
10895  bcm_l4_port_t *max);
10896 
10912 extern int bcm_field_range_destroy(
10913  int unit,
10915 
10916 #endif /* BCM_HIDE_DISPATCHABLE */
10917 
10930  bcm_field_data_qualifier_t *data_qual);
10931 
10945 
10958  bcm_field_data_ip_protocol_t *ip_protocol);
10959 
10972  bcm_field_data_packet_format_t *packet_format);
10973 
10986 extern void bcm_field_class_info_t_init(
10987  bcm_field_class_info_t *class_info);
10988 
10989 #ifndef BCM_HIDE_DISPATCHABLE
10990 
11006  int unit,
11007  bcm_field_data_qualifier_t *data_qualifier);
11008 
11024  int unit,
11025  int qual_size,
11026  int *qual_array,
11027  int *qual_count);
11028 
11040 extern int bcm_field_data_qualifier_get(
11041  int unit,
11042  int qual_id,
11044 
11056  int unit,
11057  int qual_id);
11058 
11067  int unit);
11068 
11089  int unit,
11090  int qual_id,
11092 
11103  int unit,
11104  int qual_id,
11106 
11125  int unit,
11126  int qual_id,
11127  bcm_field_data_ip_protocol_t *ip_protocol);
11128 
11139  int unit,
11140  int qual_id,
11141  bcm_field_data_ip_protocol_t *ip_protocol);
11142 
11162  int unit,
11163  int qual_id,
11164  bcm_field_data_packet_format_t *packet_format);
11165 
11178  int unit,
11179  int qual_id,
11180  bcm_field_data_packet_format_t *packet_format);
11181 
11196  int unit,
11198  int qual_id);
11199 
11214  int unit,
11216  int qual_id);
11217 
11234  int unit,
11236  int qual_max,
11237  int *qual_arr,
11238  int *qual_count);
11239 
11263 extern int bcm_field_entry_create(
11264  int unit,
11267 
11268 #endif /* BCM_HIDE_DISPATCHABLE */
11269 
11270 #define BCM_FIELD_DATA_QUALIFIER_SHIFT 14
11271 
11272 #define BCM_FIELD_DATA_QUALIFIER_SET(data_qual_id, qual_id) (qual_id = (1 << BCM_FIELD_DATA_QUALIFIER_SHIFT) | data_qual_id)
11273 
11274 #ifndef BCM_HIDE_DISPATCHABLE
11275 
11299 extern int bcm_field_entry_create_id(
11300  int unit,
11303 
11304 #endif /* BCM_HIDE_DISPATCHABLE */
11305 
11320 extern void bcm_field_entry_config_t_init(
11321  bcm_field_entry_config_t *entry_config);
11322 
11323 #ifndef BCM_HIDE_DISPATCHABLE
11324 
11342  int unit,
11343  bcm_field_entry_config_t *entry_config);
11344 
11360 extern int bcm_field_entry_config_get(
11361  int unit,
11362  bcm_field_entry_config_t *entry_config);
11363 
11382 extern int bcm_field_entry_multi_get(
11383  int unit,
11385  int entry_size,
11386  bcm_field_entry_t *entry_array,
11387  int *entry_count);
11388 
11405 extern int bcm_field_entry_destroy(
11406  int unit,
11408 
11420 extern int bcm_field_entry_destroy_all(
11421  int unit);
11422 
11445 extern int bcm_field_entry_config_copy(
11446  int unit,
11447  bcm_field_entry_t src_entry,
11448  bcm_field_entry_t *dst_entry,
11449  uint32 flags);
11450 
11471 extern int bcm_field_entry_copy(
11472  int unit,
11473  bcm_field_entry_t src_entry,
11474  bcm_field_entry_t *dst_entry);
11475 
11496 extern int bcm_field_entry_copy_id(
11497  int unit,
11498  bcm_field_entry_t src_entry,
11499  bcm_field_entry_t dst_entry);
11500 
11525 extern int bcm_field_entry_install(
11526  int unit,
11528 
11529 #endif /* BCM_HIDE_DISPATCHABLE */
11530 
11531 #define BCM_FIELD_LARGE_DIRECT_ENTRY_ID_PACK(_entry_id, _group_id, _index) \
11532  _SHR_FIELD_LARGE_DIRECT_ENTRY_ID_PACK(_entry_id, _group_id, _index)
11533 
11534 
11535 #define BCM_FIELD_LARGE_DIRECT_ENTRY_ID_UNPACK(_entry_id, _group_id, _index) \
11536  _SHR_FIELD_LARGE_DIRECT_ENTRY_ID_UNPACK(_entry_id, _group_id, _index)
11537 
11538 
11539 #ifndef BCM_HIDE_DISPATCHABLE
11540 
11567  int unit,
11569  bcm_field_entry_t *large_dt_entry);
11570 
11596 extern int bcm_field_entry_reinstall(
11597  int unit,
11599 
11615 extern int bcm_field_entry_remove(
11616  int unit,
11618 
11638 extern int bcm_field_entry_enable_set(
11639  int unit,
11641  int enable_flag);
11642 
11657 extern int bcm_field_entry_enable_get(
11658  int unit,
11660  int *enable_flag);
11661 
11680  int unit,
11681  bcm_field_entry_t entry_id,
11682  int level,
11683  bcm_policer_t policer_id);
11684 
11701  int unit,
11702  bcm_field_entry_t entry_id,
11703  int level);
11704 
11714  int unit,
11715  bcm_field_entry_t entry_id);
11716 
11727 extern int bcm_field_entry_policer_get(
11728  int unit,
11729  bcm_field_entry_t entry_id,
11730  int level,
11731  bcm_policer_t *policer_id);
11732 
11796 extern int bcm_field_entry_prio_get(
11797  int unit,
11799  int *prio);
11800 
11864 extern int bcm_field_entry_prio_set(
11865  int unit,
11867  int prio);
11868 
11881 extern int bcm_field_resync(
11882  int unit);
11883 
11898 extern int bcm_field_qset_id_multi_set(
11899  int unit,
11901  int num_objects,
11902  int *object_list,
11904 
11917  int unit,
11919  int num_objects,
11920  int *object_list,
11922 
11935 extern int bcm_field_qset_id_multi_get(
11936  int unit,
11939  int max_objects,
11940  int *object_list,
11941  int *count_objects);
11942 
11943 #endif /* BCM_HIDE_DISPATCHABLE */
11944 
11945 #define BCM_FIELD_ENTRY_LARGE_DIRECT_LOOKUP 0x10000000
11952 #define BCM_FIELD_ENTRY_KEEP_LOCATION 0x20000000
11960 #define BCM_FIELD_SEL_NOT_IN_TABLE 0xfff0
11961 
11962 #define BCM_FIELD_QUALIFY_PRESEL 0x40000000
11968 #define BCM_FIELD_QUALIFY_PRESEL_ADVANCED_MODE_STAGE_INGRESS 0x80001000
11976 #define BCM_FIELD_QUALIFY_PRESEL_ADVANCED_MODE_STAGE_EGRESS 0x80002000
11984 #define BCM_FIELD_QUALIFY_PRESEL_ADVANCED_MODE_STAGE_HASH 0x80004000
11992 #define BCM_FIELD_QUALIFY_PRESEL_ADVANCED_MODE_STAGE_EXTERNAL 0x80008000
11999 #define BCM_FIELD_QUALIFY_PRESEL_STAGGERED 0x41000000
12006 #define BCM_FIELD_PRESEL_STAGGERED 512
12011 #ifndef BCM_HIDE_DISPATCHABLE
12012 
12041 extern int bcm_field_qualify_clear(
12042  int unit,
12044 
12059 extern int bcm_field_qualify_data(
12060  int unit,
12061  bcm_field_entry_t eid,
12062  int qual_id,
12063  uint8 *data,
12064  uint8 *mask,
12065  uint16 length);
12066 
12079 extern int bcm_field_qualify_udf(
12080  int unit,
12081  bcm_field_entry_t eid,
12082  bcm_udf_id_t udf_id,
12083  int length,
12084  uint8 *data,
12085  uint8 *mask);
12086 
12100 extern int bcm_field_qualify_udf_get(
12101  int unit,
12102  bcm_field_entry_t eid,
12103  bcm_udf_id_t udf_id,
12104  int max_length,
12105  uint8 *data,
12106  uint8 *mask,
12107  int *actual_length);
12108 
12120 extern int bcm_field_qualifier_delete(
12121  int unit,
12123  bcm_field_qualify_t qual_id);
12124 
12134 extern int bcm_field_qualify_InPort(
12135  int unit,
12137  bcm_port_t data,
12138  bcm_port_t mask);
12139 
12149 extern int bcm_field_qualify_OutPort(
12150  int unit,
12152  bcm_port_t data,
12153  bcm_port_t mask);
12154 
12164 extern int bcm_field_qualify_InPorts(
12165  int unit,
12167  bcm_pbmp_t data,
12168  bcm_pbmp_t mask);
12169 
12179 extern int bcm_field_qualify_OutPorts(
12180  int unit,
12182  bcm_pbmp_t data,
12183  bcm_pbmp_t mask);
12184 
12194 extern int bcm_field_qualify_Drop(
12195  int unit,
12197  uint8 data,
12198  uint8 mask);
12199 
12211 extern int bcm_field_qualify_SrcPort(
12212  int unit,
12214  bcm_module_t data_modid,
12215  bcm_module_t mask_modid,
12216  bcm_port_t data_port,
12217  bcm_port_t mask_port);
12218 
12228 extern int bcm_field_qualify_SrcTrunk(
12229  int unit,
12231  bcm_trunk_t data,
12232  bcm_trunk_t mask);
12233 
12244  int unit,
12246  bcm_gport_t data);
12247 
12257 extern int bcm_field_qualify_SrcTMPort(
12258  int unit,
12260  bcm_port_t data_port,
12261  bcm_port_t mask_port);
12262 
12274 extern int bcm_field_qualify_DstPort(
12275  int unit,
12277  bcm_module_t data_modid,
12278  bcm_module_t mask_modid,
12279  bcm_port_t data_port,
12280  bcm_port_t mask_port);
12281 
12291 extern int bcm_field_qualify_DstTrunk(
12292  int unit,
12294  bcm_trunk_t data,
12295  bcm_trunk_t mask);
12296 
12307  int unit,
12309  bcm_l4_port_t data,
12310  bcm_l4_port_t mask);
12311 
12322  int unit,
12324  bcm_l4_port_t data,
12325  bcm_l4_port_t mask);
12326 
12336 extern int bcm_field_qualify_L4SrcPort(
12337  int unit,
12339  bcm_l4_port_t data,
12340  bcm_l4_port_t mask);
12341 
12351 extern int bcm_field_qualify_L4DstPort(
12352  int unit,
12354  bcm_l4_port_t data,
12355  bcm_l4_port_t mask);
12356 
12366 extern int bcm_field_qualify_OuterVlan(
12367  int unit,
12369  bcm_vlan_t data,
12370  bcm_vlan_t mask);
12371 
12383  int unit,
12385  bcm_vlan_t data,
12386  bcm_vlan_t mask);
12387 
12399  int unit,
12401  uint8 data,
12402  uint8 mask);
12403 
12415  int unit,
12417  uint8 data,
12418  uint8 mask);
12419 
12431  int unit,
12433  uint8 data,
12434  uint8 mask);
12435 
12445 extern int bcm_field_qualify_InnerVlan(
12446  int unit,
12448  bcm_vlan_t data,
12449  bcm_vlan_t mask);
12450 
12462  int unit,
12464  bcm_vlan_t data,
12465  bcm_vlan_t mask);
12466 
12478  int unit,
12480  uint8 data,
12481  uint8 mask);
12482 
12494  int unit,
12496  uint8 data,
12497  uint8 mask);
12498 
12508 extern int bcm_field_qualify_EtherType(
12509  int unit,
12511  uint16 data,
12512  uint16 mask);
12513 
12523 extern int bcm_field_qualify_Loopback(
12524  int unit,
12526  uint8 data,
12527  uint8 mask);
12528 
12538  int unit,
12540  bcm_field_LoopbackType_t loopback_type);
12541 
12550 extern int bcm_field_qualify_TunnelType(
12551  int unit,
12553  bcm_field_TunnelType_t tunnel_type);
12554 
12564  int unit,
12566  bcm_if_t if_id);
12567 
12577  int unit,
12580 
12590  int unit,
12592  bcm_gport_t mpls_port_id);
12593 
12603  int unit,
12605  bcm_gport_t mpls_port_id);
12606 
12616  int unit,
12618  bcm_gport_t mim_port_id);
12619 
12629  int unit,
12631  bcm_gport_t mim_port_id);
12632 
12642  int unit,
12644  bcm_gport_t wlan_port_id);
12645 
12655  int unit,
12657  bcm_gport_t wlan_port_id);
12658 
12668  int unit,
12670  bcm_gport_t vxlan_port_id);
12671 
12681  int unit,
12683  bcm_gport_t vxlan_port_id);
12684 
12696  int unit,
12698  uint8 data,
12699  uint8 mask);
12700 
12712  int unit,
12714  bcm_vlan_t data,
12715  bcm_vlan_t mask);
12716 
12728  int unit,
12730  bcm_vlan_t *data,
12731  bcm_vlan_t *mask);
12732 
12748 extern int bcm_field_qualify_Vpn(
12749  int unit,
12751  bcm_vpn_t data,
12752  bcm_vpn_t mask);
12753 
12769 extern int bcm_field_qualify_Vpn_get(
12770  int unit,
12772  bcm_vpn_t *data,
12773  bcm_vpn_t *mask);
12774 
12784 extern int bcm_field_qualify_Color(
12785  int unit,
12787  uint8 color);
12788 
12799  int unit,
12801  bcm_gport_t data);
12802 
12813  int unit,
12815  bcm_gport_t data);
12816 
12826 extern int bcm_field_qualify_IpProtocol(
12827  int unit,
12829  uint8 data,
12830  uint8 mask);
12831 
12841 extern int bcm_field_qualify_IpInfo(
12842  int unit,
12844  uint32 data,
12845  uint32 mask);
12846 
12856 extern int bcm_field_qualify_PacketRes(
12857  int unit,
12859  uint32 data,
12860  uint32 mask);
12861 
12871 extern int bcm_field_qualify_SrcIp(
12872  int unit,
12874  bcm_ip_t data,
12875  bcm_ip_t mask);
12876 
12886 extern int bcm_field_qualify_DstIp(
12887  int unit,
12889  bcm_ip_t data,
12890  bcm_ip_t mask);
12891 
12902 extern int bcm_field_qualify_KeyGenVar(
12903  int unit,
12905  uint32 data,
12906  uint32 mask);
12907 
12917 extern int bcm_field_qualify_DSCP(
12918  int unit,
12920  uint8 data,
12921  uint8 mask);
12922 
12932 extern int bcm_field_qualify_Tos(
12933  int unit,
12935  uint8 data,
12936  uint8 mask);
12937 
12947 extern int bcm_field_qualify_IpFlags(
12948  int unit,
12950  uint8 data,
12951  uint8 mask);
12952 
12962 extern int bcm_field_qualify_TcpControl(
12963  int unit,
12965  uint8 data,
12966  uint8 mask);
12967 
12977  int unit,
12979  uint32 flag);
12980 
12991  int unit,
12993  uint8 data,
12994  uint8 mask);
12995 
13005 extern int bcm_field_qualify_Ttl(
13006  int unit,
13008  uint8 data,
13009  uint8 mask);
13010 
13020 extern int bcm_field_qualify_RangeCheck(
13021  int unit,
13024  int invert);
13025 
13035 extern int bcm_field_qualify_SrcIp6(
13036  int unit,
13038  bcm_ip6_t data,
13039  bcm_ip6_t mask);
13040 
13050 extern int bcm_field_qualify_DstIp6(
13051  int unit,
13053  bcm_ip6_t data,
13054  bcm_ip6_t mask);
13055 
13065 extern int bcm_field_qualify_SrcIp6High(
13066  int unit,
13068  bcm_ip6_t data,
13069  bcm_ip6_t mask);
13070 
13080 extern int bcm_field_qualify_DstIp6High(
13081  int unit,
13083  bcm_ip6_t data,
13084  bcm_ip6_t mask);
13085 
13095 extern int bcm_field_qualify_DstIp6Low(
13096  int unit,
13098  bcm_ip6_t data,
13099  bcm_ip6_t mask);
13100 
13110 extern int bcm_field_qualify_SrcIp6Low(
13111  int unit,
13113  bcm_ip6_t data,
13114  bcm_ip6_t mask);
13115 
13126  int unit,
13128  uint8 data,
13129  uint8 mask);
13130 
13141  int unit,
13143  uint8 data,
13144  uint8 mask);
13145 
13156  int unit,
13158  uint32 data,
13159  uint32 mask);
13160 
13171  int unit,
13173  uint32 data,
13174  uint32 mask);
13175 
13186  int unit,
13188  uint8 data,
13189  uint8 mask);
13190 
13200 extern int bcm_field_qualify_SrcMac(
13201  int unit,
13203  bcm_mac_t data,
13204  bcm_mac_t mask);
13205 
13215 extern int bcm_field_qualify_DstMac(
13216  int unit,
13218  bcm_mac_t data,
13219  bcm_mac_t mask);
13220 
13230  int unit,
13233 
13243  int unit,
13246 
13255 extern int bcm_field_qualify_AppType(
13256  int unit,
13259 
13268 extern int bcm_field_qualify_IpType(
13269  int unit,
13272 
13281 extern int bcm_field_qualify_L2Format(
13282  int unit,
13285 
13295 extern int bcm_field_qualify_VlanFormat(
13296  int unit,
13298  uint8 data,
13299  uint8 mask);
13300 
13310 extern int bcm_field_qualify_MHOpcode(
13311  int unit,
13313  uint8 data,
13314  uint8 mask);
13315 
13324 extern int bcm_field_qualify_Decap(
13325  int unit,
13327  bcm_field_decap_t decap);
13328 
13344 extern int bcm_field_qualify_HiGig(
13345  int unit,
13347  uint8 data,
13348  uint8 mask);
13349 
13359 extern int bcm_field_qualify_DstHiGig(
13360  int unit,
13362  uint8 data,
13363  uint8 mask);
13364 
13374 extern int bcm_field_qualify_HiGigProxy(
13375  int unit,
13377  uint8 data,
13378  uint8 mask);
13379 
13390  int unit,
13392  uint32 data,
13393  uint32 mask);
13394 
13405  int unit,
13407  uint32 data,
13408  uint32 mask);
13409 
13420  int unit,
13422  uint32 data,
13423  uint32 mask);
13424 
13434 extern int bcm_field_qualify_SrcClassL2(
13435  int unit,
13437  uint32 data,
13438  uint32 mask);
13439 
13449 extern int bcm_field_qualify_SrcClassL3(
13450  int unit,
13452  uint32 data,
13453  uint32 mask);
13454 
13465  int unit,
13467  uint32 data,
13468  uint32 mask);
13469 
13479 extern int bcm_field_qualify_DstClassL2(
13480  int unit,
13482  uint32 data,
13483  uint32 mask);
13484 
13494 extern int bcm_field_qualify_DstClassL3(
13495  int unit,
13497  uint32 data,
13498  uint32 mask);
13499 
13510  int unit,
13512  uint32 data,
13513  uint32 mask);
13514 
13526  int unit,
13528  uint32 *data,
13529  uint32 *mask);
13530 
13541  int unit,
13543  uint32 data,
13544  uint32 mask);
13545 
13557  int unit,
13559  uint32 *data,
13560  uint32 *mask);
13561 
13572  int unit,
13574  uint32 data,
13575  uint32 mask);
13576 
13586  int unit,
13588  bcm_if_t mpintf);
13589 
13599  int unit,
13601  bcm_if_t *mpintf);
13602 
13612  int unit,
13615 
13625  int unit,
13628 
13638 extern int bcm_field_qualify_Snap(
13639  int unit,
13643 
13653 extern int bcm_field_qualify_Llc(
13654  int unit,
13656  bcm_field_llc_header_t data,
13657  bcm_field_llc_header_t mask);
13658 
13667 extern int bcm_field_qualify_InnerTpid(
13668  int unit,
13670  uint16 tpid);
13671 
13680 extern int bcm_field_qualify_OuterTpid(
13681  int unit,
13683  uint16 tpid);
13684 
13694 extern int bcm_field_qualify_L3Routable(
13695  int unit,
13697  uint8 data,
13698  uint8 mask);
13699 
13708 extern int bcm_field_qualify_IpFrag(
13709  int unit,
13711  bcm_field_IpFrag_t frag_info);
13712 
13722 extern int bcm_field_qualify_Vrf(
13723  int unit,
13725  uint32 data,
13726  uint32 mask);
13727 
13737 extern int bcm_field_qualify_L3Ingress(
13738  int unit,
13740  uint32 intf_id,
13741  uint32 mask);
13742 
13753  int unit,
13755  uint8 data,
13756  uint8 mask);
13757 
13768  int unit,
13770  uint8 data,
13771  uint8 mask);
13772 
13783  int unit,
13785  uint8 data,
13786  uint8 mask);
13787 
13797 extern int bcm_field_qualify_L4Ports(
13798  int unit,
13800  uint8 data,
13801  uint8 mask);
13802 
13812 extern int bcm_field_qualify_SampledPkt(
13813  int unit,
13815  uint8 data,
13816  uint8 mask);
13817 
13828  int unit,
13830  uint8 data,
13831  uint8 mask);
13832 
13842 extern int bcm_field_qualify_MirrorCopy(
13843  int unit,
13845  uint8 data,
13846  uint8 mask);
13847 
13857 extern int bcm_field_qualify_PphType(
13858  int unit,
13860  uint8 data,
13861  uint8 mask);
13862 
13873  int unit,
13875  uint8 data,
13876  uint8 mask);
13877 
13888  int unit,
13890  uint8 data,
13891  uint8 mask);
13892 
13903  int unit,
13905  uint8 data,
13906  uint8 mask);
13907 
13917 extern int bcm_field_qualify_InnerSrcIp(
13918  int unit,
13920  bcm_ip_t data,
13921  bcm_ip_t mask);
13922 
13932 extern int bcm_field_qualify_InnerDstIp(
13933  int unit,
13935  bcm_ip_t data,
13936  bcm_ip_t mask);
13937 
13948  int unit,
13950  bcm_ip6_t data,
13951  bcm_ip6_t mask);
13952 
13963  int unit,
13965  bcm_ip6_t data,
13966  bcm_ip6_t mask);
13967 
13978  int unit,
13980  bcm_ip6_t data,
13981  bcm_ip6_t mask);
13982 
13993  int unit,
13995  bcm_ip6_t data,
13996  bcm_ip6_t mask);
13997 
14008  int unit,
14010  uint8 data,
14011  uint8 mask);
14012 
14022 extern int bcm_field_qualify_InnerTtl(
14023  int unit,
14025  uint8 data,
14026  uint8 mask);
14027 
14037 extern int bcm_field_qualify_InnerTos(
14038  int unit,
14040  uint8 data,
14041  uint8 mask);
14042 
14052 extern int bcm_field_qualify_InnerDSCP(
14053  int unit,
14055  uint8 data,
14056  uint8 mask);
14057 
14068  int unit,
14070  uint8 data,
14071  uint8 mask);
14072 
14083  int unit,
14085  uint8 data,
14086  uint8 mask);
14087 
14097  int unit,
14099  bcm_field_IpFrag_t frag_info);
14100 
14110 extern int bcm_field_qualify_DosAttack(
14111  int unit,
14113  uint8 data,
14114  uint8 mask);
14115 
14126  int unit,
14128  uint8 data,
14129  uint8 mask);
14130 
14141  int unit,
14143  uint8 data,
14144  uint8 mask);
14145 
14158  int unit,
14160  uint32 data1,
14161  uint32 data2,
14162  uint32 mask1,
14163  uint32 mask2);
14164 
14175  int unit,
14177  uint8 data,
14178  uint8 mask);
14179 
14190  int unit,
14192  uint8 data,
14193  uint8 mask);
14194 
14205  int unit,
14207  uint8 data,
14208  uint8 mask);
14209 
14219 extern int bcm_field_qualify_L2CacheHit(
14220  int unit,
14222  uint8 data,
14223  uint8 mask);
14224 
14235  int unit,
14237  uint8 data,
14238  uint8 mask);
14239 
14249 extern int bcm_field_qualify_L2DestHit(
14250  int unit,
14252  uint8 data,
14253  uint8 mask);
14254 
14265  int unit,
14267  uint8 data,
14268  uint8 mask);
14269 
14279 extern int bcm_field_qualify_L2SrcHit(
14280  int unit,
14282  uint8 data,
14283  uint8 mask);
14284 
14295  int unit,
14297  uint8 data,
14298  uint8 mask);
14299 
14310  int unit,
14312  uint8 data,
14313  uint8 mask);
14314 
14325  int unit,
14327  uint8 *data,
14328  uint8 *mask);
14329 
14340  int unit,
14342  uint8 data,
14343  uint8 mask);
14344 
14355  int unit,
14357  uint8 data,
14358  uint8 mask);
14359 
14371  int unit,
14373  uint32 data,
14374  uint32 mask);
14375 
14386  int unit,
14388  uint8 data,
14389  uint8 mask);
14390 
14401  int unit,
14403  uint16 data,
14404  uint16 mask);
14405 
14417  int unit,
14419  uint8 data,
14420  uint8 mask);
14421 
14431  int unit,
14433  bcm_field_FibreChan_t fibre_chan_type);
14434 
14444  int unit,
14446  bcm_field_FibreChan_t fibre_chan_type);
14447 
14457 extern int bcm_field_qualify_VnTag(
14458  int unit,
14460  uint32 data,
14461  uint32 mask);
14462 
14473  int unit,
14475  uint16 data,
14476  uint16 mask);
14477 
14487 extern int bcm_field_qualify_CnTag(
14488  int unit,
14490  uint32 data,
14491  uint32 mask);
14492 
14503  int unit,
14505  uint32 data,
14506  uint32 mask);
14507 
14519  int unit,
14521  uint8 *data,
14522  uint8 *mask);
14523 
14533 extern int bcm_field_qualify_Color_get(
14534  int unit,
14536  uint8 *color);
14537 
14548  int unit,
14550  bcm_gport_t *data);
14551 
14562  int unit,
14564  bcm_gport_t *data);
14565 
14575  int unit,
14577  bcm_field_LoopbackType_t *loopback_type);
14578 
14588  int unit,
14590  bcm_field_TunnelType_t *tunnel_type);
14591 
14602  int unit,
14604  bcm_if_t *if_id);
14605 
14616  int unit,
14619 
14630  int unit,
14632  bcm_gport_t *mpls_port_id);
14633 
14644  int unit,
14646  bcm_gport_t *mpls_port_id);
14647 
14658  int unit,
14660  bcm_gport_t *mim_port_id);
14661 
14672  int unit,
14674  bcm_gport_t *mim_port_id);
14675 
14686  int unit,
14688  bcm_gport_t *wlan_port_id);
14689 
14700  int unit,
14702  bcm_gport_t *wlan_port_id);
14703 
14714  int unit,
14716  bcm_gport_t *vxlan_port_id);
14717 
14728  int unit,
14730  bcm_gport_t *vxlan_port_id);
14731 
14742  int unit,
14744  uint8 *data,
14745  uint8 *mask);
14746 
14757 extern int bcm_field_qualify_InPort_get(
14758  int unit,
14760  bcm_port_t *data,
14761  bcm_port_t *mask);
14762 
14774  int unit,
14776  bcm_port_t *data,
14777  bcm_port_t *mask);
14778 
14793  int unit,
14795  bcm_pbmp_t *data,
14796  bcm_pbmp_t *mask);
14797 
14809  int unit,
14811  bcm_pbmp_t *data,
14812  bcm_pbmp_t *mask);
14813 
14824 extern int bcm_field_qualify_Drop_get(
14825  int unit,
14827  uint8 *data,
14828  uint8 *mask);
14829 
14843  int unit,
14845  bcm_module_t *data_modid,
14846  bcm_module_t *mask_modid,
14847  bcm_port_t *data_port,
14848  bcm_port_t *mask_port);
14849 
14861  int unit,
14863  bcm_trunk_t *data,
14864  bcm_trunk_t *mask);
14865 
14876  int unit,
14878  bcm_gport_t *data);
14879 
14891  int unit,
14893  bcm_port_t *data_port,
14894  bcm_port_t *mask_port);
14895 
14909  int unit,
14911  bcm_module_t *data_modid,
14912  bcm_module_t *mask_modid,
14913  bcm_port_t *data_port,
14914  bcm_port_t *mask_port);
14915 
14927  int unit,
14929  bcm_trunk_t *data,
14930  bcm_trunk_t *mask);
14931 
14943  int unit,
14945  bcm_l4_port_t *data,
14946  bcm_l4_port_t *mask);
14947 
14959  int unit,
14961  bcm_l4_port_t *data,
14962  bcm_l4_port_t *mask);
14963 
14975  int unit,
14977  bcm_l4_port_t *data,
14978  bcm_l4_port_t *mask);
14979 
14991  int unit,
14993  bcm_l4_port_t *data,
14994  bcm_l4_port_t *mask);
14995 
15007  int unit,
15009  bcm_vlan_t *data,
15010  bcm_vlan_t *mask);
15011 
15023  int unit,
15025  bcm_vlan_t *data,
15026  bcm_vlan_t *mask);
15027 
15039  int unit,
15041  uint8 *data,
15042  uint8 *mask);
15043 
15055  int unit,
15057  uint8 *data,
15058  uint8 *mask);
15059 
15071  int unit,
15073  uint8 *data,
15074  uint8 *mask);
15075 
15087  int unit,
15089  bcm_vlan_t *data,
15090  bcm_vlan_t *mask);
15091 
15103  int unit,
15105  bcm_vlan_t *data,
15106  bcm_vlan_t *mask);
15107 
15119  int unit,
15121  uint8 *data,
15122  uint8 *mask);
15123 
15135  int unit,
15137  uint8 *data,
15138  uint8 *mask);
15139 
15151  int unit,
15153  uint16 *data,
15154  uint16 *mask);
15155 
15167  int unit,
15169  uint8 *data,
15170  uint8 *mask);
15171 
15182 extern int bcm_field_qualify_IpInfo_get(
15183  int unit,
15185  uint32 *data,
15186  uint32 *mask);
15187 
15199  int unit,
15201  uint32 *data,
15202  uint32 *mask);
15203 
15214 extern int bcm_field_qualify_SrcIp_get(
15215  int unit,
15217  bcm_ip_t *data,
15218  bcm_ip_t *mask);
15219 
15230 extern int bcm_field_qualify_DstIp_get(
15231  int unit,
15233  bcm_ip_t *data,
15234  bcm_ip_t *mask);
15235 
15246 extern int bcm_field_qualify_Tos_get(
15247  int unit,
15249  uint8 *data,
15250  uint8 *mask);
15251 
15262 extern int bcm_field_qualify_DSCP_get(
15263  int unit,
15265  uint8 *data,
15266  uint8 *mask);
15267 
15279  int unit,
15281  uint8 *data,
15282  uint8 *mask);
15283 
15295  int unit,
15297  uint8 *data,
15298  uint8 *mask);
15299 
15310  int unit,
15312  uint32 *flag);
15313 
15325  int unit,
15327  uint8 *data,
15328  uint8 *mask);
15329 
15340 extern int bcm_field_qualify_Ttl_get(
15341  int unit,
15343  uint8 *data,
15344  uint8 *mask);
15345 
15359  int unit,
15361  int max_count,
15363  int *invert,
15364  int *count);
15365 
15376 extern int bcm_field_qualify_SrcIp6_get(
15377  int unit,
15379  bcm_ip6_t *data,
15380  bcm_ip6_t *mask);
15381 
15392 extern int bcm_field_qualify_DstIp6_get(
15393  int unit,
15395  bcm_ip6_t *data,
15396  bcm_ip6_t *mask);
15397 
15409  int unit,
15411  bcm_ip6_t *data,
15412  bcm_ip6_t *mask);
15413 
15425  int unit,
15427  bcm_ip6_t *data,
15428  bcm_ip6_t *mask);
15429 
15441  int unit,
15443  bcm_ip6_t *data,
15444  bcm_ip6_t *mask);
15445 
15457  int unit,
15459  bcm_ip6_t *data,
15460  bcm_ip6_t *mask);
15461 
15473  int unit,
15475  uint8 *data,
15476  uint8 *mask);
15477 
15489  int unit,
15491  uint8 *data,
15492  uint8 *mask);
15493 
15505  int unit,
15507  uint32 *data,
15508  uint32 *mask);
15509 
15521  int unit,
15523  uint32 *data,
15524  uint32 *mask);
15525 
15537  int unit,
15539  uint8 *data,
15540  uint8 *mask);
15541 
15552 extern int bcm_field_qualify_SrcMac_get(
15553  int unit,
15555  bcm_mac_t *data,
15556  bcm_mac_t *mask);
15557 
15568 extern int bcm_field_qualify_DstMac_get(
15569  int unit,
15571  bcm_mac_t *data,
15572  bcm_mac_t *mask);
15573 
15585  int unit,
15587  bcm_mac_t data,
15588  bcm_mac_t mask);
15589 
15601  int unit,
15603  bcm_mac_t *data,
15604  bcm_mac_t *mask);
15605 
15617  int unit,
15619  bcm_mac_t data,
15620  bcm_mac_t mask);
15621 
15633  int unit,
15635  bcm_mac_t *data,
15636  bcm_mac_t *mask);
15637 
15649  int unit,
15651  bcm_vlan_t data,
15652  bcm_vlan_t mask);
15653 
15665  int unit,
15667  bcm_vlan_t *data,
15668  bcm_vlan_t *mask);
15669 
15680  int unit,
15683 
15694  int unit,
15697 
15708  int unit,
15711 
15721 extern int bcm_field_qualify_IpType_get(
15722  int unit,
15725 
15736  int unit,
15739 
15751  int unit,
15753  uint8 *data,
15754  uint8 *mask);
15755 
15767  int unit,
15769  uint8 *data,
15770  uint8 *mask);
15771 
15783  int unit,
15785  uint8 *data,
15786  uint8 *mask);
15787 
15796 extern int bcm_field_qualify_Decap_get(
15797  int unit,
15799  bcm_field_decap_t *decap);
15800 
15812  int unit,
15814  uint8 *data,
15815  uint8 *mask);
15816 
15827 extern int bcm_field_qualify_HiGig_get(
15828  int unit,
15830  uint8 *data,
15831  uint8 *mask);
15832 
15844  int unit,
15846  uint8 *data,
15847  uint8 *mask);
15848 
15860  int unit,
15862  uint32 *data,
15863  uint32 *mask);
15864 
15876  int unit,
15878  uint32 *data,
15879  uint32 *mask);
15880 
15892  int unit,
15894  uint32 *data,
15895  uint32 *mask);
15896 
15908  int unit,
15910  uint32 *data,
15911  uint32 *mask);
15912 
15924  int unit,
15926  uint32 *data,
15927  uint32 *mask);
15928 
15940  int unit,
15942  uint32 *data,
15943  uint32 *mask);
15944 
15956  int unit,
15958  uint32 *data,
15959  uint32 *mask);
15960 
15972  int unit,
15974  uint32 *data,
15975  uint32 *mask);
15976 
15988  int unit,
15990  uint32 *data,
15991  uint32 *mask);
15992 
16003  int unit,
16006 
16017  int unit,
16020 
16031 extern int bcm_field_qualify_Snap_get(
16032  int unit,
16034  bcm_field_snap_header_t *data,
16035  bcm_field_snap_header_t *mask);
16036 
16047 extern int bcm_field_qualify_Llc_get(
16048  int unit,
16050  bcm_field_llc_header_t *data,
16051  bcm_field_llc_header_t *mask);
16052 
16063  int unit,
16065  uint16 *tpid);
16066 
16077  int unit,
16079  uint16 *tpid);
16080 
16092  int unit,
16094  uint8 *data,
16095  uint8 *mask);
16096 
16106 extern int bcm_field_qualify_IpFrag_get(
16107  int unit,
16109  bcm_field_IpFrag_t *frag_info);
16110 
16121 extern int bcm_field_qualify_Vrf_get(
16122  int unit,
16124  uint32 *data,
16125  uint32 *mask);
16126 
16138  int unit,
16140  uint32 *data,
16141  uint32 *mask);
16142 
16154  int unit,
16156  uint8 *data,
16157  uint8 *mask);
16158 
16170  int unit,
16172  uint8 *data,
16173  uint8 *mask);
16174 
16186  int unit,
16188  uint8 *data,
16189  uint8 *mask);
16190 
16202  int unit,
16204  uint8 *data,
16205  uint8 *mask);
16206 
16218  int unit,
16220  uint8 *data,
16221  uint8 *mask);
16222 
16234  int unit,
16236  uint8 *data,
16237  uint8 *mask);
16238 
16250  int unit,
16252  uint8 *data,
16253  uint8 *mask);
16254 
16266  int unit,
16268  uint8 *data,
16269  uint8 *mask);
16270 
16282  int unit,
16284  uint8 *data,
16285  uint8 *mask);
16286 
16298  int unit,
16300  uint8 *data,
16301  uint8 *mask);
16302 
16314  int unit,
16316  uint8 *data,
16317  uint8 *mask);
16318 
16330  int unit,
16332  bcm_ip_t *data,
16333  bcm_ip_t *mask);
16334 
16346  int unit,
16348  bcm_ip_t *data,
16349  bcm_ip_t *mask);
16350 
16362  int unit,
16364  bcm_ip6_t *data,
16365  bcm_ip6_t *mask);
16366 
16378  int unit,
16380  bcm_ip6_t *data,
16381  bcm_ip6_t *mask);
16382 
16394  int unit,
16396  bcm_ip6_t *data,
16397  bcm_ip6_t *mask);
16398 
16410  int unit,
16412  bcm_ip6_t *data,
16413  bcm_ip6_t *mask);
16414 
16426  int unit,
16428  uint8 *data,
16429  uint8 *mask);
16430 
16442  int unit,
16444  uint8 *data,
16445  uint8 *mask);
16446 
16458  int unit,
16460  uint8 *data,
16461  uint8 *mask);
16462 
16474  int unit,
16476  uint8 *data,
16477  uint8 *mask);
16478 
16490  int unit,
16492  uint8 *data,
16493  uint8 *mask);
16494 
16506  int unit,
16508  uint8 *data,
16509  uint8 *mask);
16510 
16521  int unit,
16523  bcm_field_IpFrag_t *frag_info);
16524 
16536  int unit,
16538  uint8 *data,
16539  uint8 *mask);
16540 
16552  int unit,
16554  uint8 *data,
16555  uint8 *mask);
16556 
16568  int unit,
16570  uint8 *data,
16571  uint8 *mask);
16572 
16586  int unit,
16588  uint32 *data1,
16589  uint32 *data2,
16590  uint32 *mask1,
16591  uint32 *mask2);
16592 
16604  int unit,
16606  uint8 *data,
16607  uint8 *mask);
16608 
16620  int unit,
16622  uint8 *data,
16623  uint8 *mask);
16624 
16636  int unit,
16638  uint8 *data,
16639  uint8 *mask);
16640 
16652  int unit,
16654  uint8 *data,
16655  uint8 *mask);
16656 
16668  int unit,
16670  uint8 *data,
16671  uint8 *mask);
16672 
16684  int unit,
16686  uint8 *data,
16687  uint8 *mask);
16688 
16700  int unit,
16702  uint8 *data,
16703  uint8 *mask);
16704 
16716  int unit,
16718  uint8 *data,
16719  uint8 *mask);
16720 
16732  int unit,
16734  uint8 *data,
16735  uint8 *mask);
16736 
16748  int unit,
16750  uint8 *data,
16751  uint8 *mask);
16752 
16764  int unit,
16766  uint8 *data,
16767  uint8 *mask);
16768 
16780  int unit,
16782  uint32 *data,
16783  uint32 *mask);
16784 
16796  int unit,
16798  uint8 *data,
16799  uint8 *mask);
16800 
16812  int unit,
16814  uint16 *data,
16815  uint16 *mask);
16816 
16826  int unit,
16828  bcm_field_FibreChan_t *fibre_chan_type);
16829 
16839  int unit,
16841  bcm_field_FibreChan_t *fibre_chan_type);
16842 
16853 extern int bcm_field_qualify_VnTag_get(
16854  int unit,
16856  uint32 *data,
16857  uint32 *mask);
16858 
16870  int unit,
16872  uint16 *data,
16873  uint16 *mask);
16874 
16885 extern int bcm_field_qualify_CnTag_get(
16886  int unit,
16888  uint32 *data,
16889  uint32 *mask);
16890 
16902  int unit,
16904  uint32 *data,
16905  uint32 *mask);
16906 
16916 extern int bcm_field_qualify_FlowId(
16917  int unit,
16919  uint16 data,
16920  uint16 mask);
16921 
16931 extern int bcm_field_qualify_InVPort(
16932  int unit,
16934  uint8 data,
16935  uint8 mask);
16936 
16946 extern int bcm_field_qualify_OutVPort(
16947  int unit,
16949  uint8 data,
16950  uint8 mask);
16951 
16961 extern int bcm_field_qualify_InVPort32(
16962  int unit,
16964  uint32 data,
16965  uint32 mask);
16966 
16976 extern int bcm_field_qualify_OutVPort32(
16977  int unit,
16979  uint32 data,
16980  uint32 mask);
16981 
16992 extern int bcm_field_qualify_FlowId_get(
16993  int unit,
16995  uint16 *data,
16996  uint16 *mask);
16997 
17009  int unit,
17011  uint8 *data,
17012  uint8 *mask);
17013 
17025  int unit,
17027  uint8 *data,
17028  uint8 *mask);
17029 
17041  int unit,
17043  uint32 *data,
17044  uint32 *mask);
17045 
17057  int unit,
17059  uint32 *data,
17060  uint32 *mask);
17061 
17071 extern int bcm_field_qualify_LlidValue(
17072  int unit,
17074  uint16 data,
17075  uint16 mask);
17076 
17088  int unit,
17090  uint16 *data,
17091  uint16 *mask);
17092 
17104  int unit,
17106  uint8 data,
17107  uint8 mask);
17108 
17120  int unit,
17122  uint8 *data,
17123  uint8 *mask);
17124 
17135 extern int bcm_field_qualify_RepCopy(
17136  int unit,
17138  uint8 data,
17139  uint8 mask);
17140 
17152  int unit,
17154  uint8 *data,
17155  uint8 *mask);
17156 
17168  int unit,
17170  uint8 data,
17171  uint8 mask);
17172 
17184  int unit,
17186  uint8 *data,
17187  uint8 *mask);
17188 
17200  int unit,
17202  uint8 data,
17203  uint8 mask);
17204 
17216  int unit,
17218  uint8 *data,
17219  uint8 *mask);
17220 
17232  int unit,
17234  uint8 data,
17235  uint8 mask);
17236 
17248  int unit,
17250  uint8 *data,
17251  uint8 *mask);
17252 
17264  int unit,
17266  uint8 data,
17267  uint8 mask);
17268 
17280  int unit,
17282  uint8 *data,
17283  uint8 *mask);
17284 
17296  int unit,
17298  uint8 data,
17299  uint8 mask);
17300 
17312  int unit,
17314  uint8 *data,
17315  uint8 *mask);
17316 
17328  int unit,
17330  uint8 data,
17331  uint8 mask);
17332 
17344  int unit,
17346  uint8 *data,
17347  uint8 *mask);
17348 
17360  int unit,
17362  uint8 data,
17363  uint8 mask);
17364 
17376  int unit,
17378  uint8 *data,
17379  uint8 *mask);
17380 
17392  int unit,
17394  uint8 data,
17395  uint8 mask);
17396 
17408  int unit,
17410  uint8 *data,
17411  uint8 *mask);
17412 
17423 extern int bcm_field_qualify_MimVfiHit(
17424  int unit,
17426  uint8 data,
17427  uint8 mask);
17428 
17440  int unit,
17442  uint8 *data,
17443  uint8 *mask);
17444 
17456  int unit,
17458  uint8 data,
17459  uint8 mask);
17460 
17472  int unit,
17474  uint8 *data,
17475  uint8 *mask);
17476 
17488  int unit,
17490  uint8 data,
17491  uint8 mask);
17492 
17504  int unit,
17506  uint8 *data,
17507  uint8 *mask);
17508 
17519 extern int bcm_field_qualify_DstIpLocal(
17520  int unit,
17522  uint8 data,
17523  uint8 mask);
17524 
17536  int unit,
17538  uint8 *data,
17539  uint8 *mask);
17540 
17552  int unit,
17554  uint8 data,
17555  uint8 mask);
17556 
17568  int unit,
17570  uint8 *data,
17571  uint8 *mask);
17572 
17584  int unit,
17586  uint8 data,
17587  uint8 mask);
17588 
17600  int unit,
17602  uint8 *data,
17603  uint8 *mask);
17604 
17616  int unit,
17618  uint32 data,
17619  uint32 mask);
17620 
17632  int unit,
17634  uint32 *data,
17635  uint32 *mask);
17636 
17648  int unit,
17650  uint8 data,
17651  uint8 mask);
17652 
17664  int unit,
17666  uint8 *data,
17667  uint8 *mask);
17668 
17680  int unit,
17682  uint8 data,
17683  uint8 mask);
17684 
17696  int unit,
17698  uint8 *data,
17699  uint8 *mask);
17700 
17712  int unit,
17714  uint8 data,
17715  uint8 mask);
17716 
17728  int unit,
17730  uint8 *data,
17731  uint8 *mask);
17732 
17744  int unit,
17746  uint32 data,
17747  uint32 mask);
17748 
17760  int unit,
17762  uint32 *data,
17763  uint32 *mask);
17764 
17776  int unit,
17778  uint32 data,
17779  uint32 mask);
17780 
17792  int unit,
17794  uint32 *data,
17795  uint32 *mask);
17796 
17808  int unit,
17810  uint16 data,
17811  uint16 mask);
17812 
17824  int unit,
17826  uint16 *data,
17827  uint16 *mask);
17828 
17840  int unit,
17842  uint16 data,
17843  uint16 mask);
17844 
17856  int unit,
17858  uint16 *data,
17859  uint16 *mask);
17860 
17872  int unit,
17874  uint16 data,
17875  uint16 mask);
17876 
17888  int unit,
17890  uint16 *data,
17891  uint16 *mask);
17892 
17904  int unit,
17906  uint16 data,
17907  uint16 mask);
17908 
17920  int unit,
17922  uint16 *data,
17923  uint16 *mask);
17924 
17936  int unit,
17938  uint8 data,
17939  uint8 mask);
17940 
17952  int unit,
17954  uint8 *data,
17955  uint8 *mask);
17956 
17968  int unit,
17970  uint32 data,
17971  uint32 mask);
17972 
17984  int unit,
17986  uint32 *data,
17987  uint32 *mask);
17988 
18000  int unit,
18002  uint8 data,
18003  uint8 mask);
18004 
18016  int unit,
18018  uint8 *data,
18019  uint8 *mask);
18020 
18032  int unit,
18034  uint16 data,
18035  uint16 mask);
18036 
18048  int unit,
18050  uint16 *data,
18051  uint16 *mask);
18052 
18064  int unit,
18066  uint16 data,
18067  uint16 mask);
18068 
18080  int unit,
18082  uint16 *data,
18083  uint16 *mask);
18084 
18096  int unit,
18098  uint16 data,
18099  uint16 mask);
18100 
18112  int unit,
18114  uint16 *data,
18115  uint16 *mask);
18116 
18128  int unit,
18130  uint16 data,
18131  uint16 mask);
18132 
18144  int unit,
18146  uint16 *data,
18147  uint16 *mask);
18148 
18160  int unit,
18162  uint16 data,
18163  uint16 mask);
18164 
18176  int unit,
18178  uint16 *data,
18179  uint16 *mask);
18180 
18190 extern int bcm_field_qualify_CpuQueue(
18191  int unit,
18193  uint8 data,
18194  uint8 mask);
18195 
18206  int unit,
18208  uint8 *data,
18209  uint8 *mask);
18210 
18219 extern int bcm_field_qualify_SrcGport(
18220  int unit,
18222  bcm_gport_t port_id);
18223 
18233  int unit,
18235  bcm_gport_t *port_id);
18236 
18246  int unit,
18248  bcm_field_header_format_t header_format);
18249 
18259  int unit,
18261  bcm_field_header_format_t *header_format);
18262 
18272  int unit,
18274  bcm_field_header_format_extension_t header_format_extension);
18275 
18285  int unit,
18287  bcm_field_header_format_extension_t *header_format_extension);
18288 
18298  int unit,
18300  bcm_field_header_format_set_t header_format_set);
18301 
18311  int unit,
18313  bcm_field_header_format_set_t *header_format_set);
18314 
18324 extern int bcm_field_qualify_L2Learn(
18325  int unit,
18327  uint8 data,
18328  uint8 mask);
18329 
18340  int unit,
18342  uint8 *data,
18343  uint8 *mask);
18344 
18355  int unit,
18357  uint8 data,
18358  uint8 mask);
18359 
18370  int unit,
18372  uint8 *data,
18373  uint8 *mask);
18374 
18388  int unit,
18390  uint8 data,
18391  uint8 mask);
18392 
18406  int unit,
18408  uint8 *data,
18409  uint8 *mask);
18410 
18434 extern int bcm_field_qualify_MacSecTag(
18435  int unit,
18437  uint8 data,
18438  uint8 mask);
18439 
18453  int unit,
18455  uint8 *data,
18456  uint8 *mask);
18457 
18473  int unit,
18475  uint8 data,
18476  uint8 mask);
18477 
18491  int unit,
18493  uint8 *data,
18494  uint8 *mask);
18495 
18508  int unit,
18509  bcm_mac_t lower_limit,
18510  bcm_mac_t upper_limit);
18511 
18524  int unit,
18525  bcm_mac_t *lower_limit,
18526  bcm_mac_t *upper_limit);
18527 
18541  int unit,
18543  uint8 data,
18544  uint8 mask);
18545 
18559  int unit,
18561  uint8 *data,
18562  uint8 *mask);
18563 
18588 extern int bcm_field_qualify_MacSecFlow(
18589  int unit,
18592 
18605  int unit,
18607  bcm_field_macsec_flow_t *data);
18608 
18618 extern int bcm_field_qualify_EcnValue(
18619  int unit,
18621  uint8 data,
18622  uint8 mask);
18623 
18634  int unit,
18636  uint8 *data,
18637  uint8 *mask);
18638 
18647 extern int bcm_field_qualify_RxTrapCode(
18648  int unit,
18650  bcm_rx_trap_t data);
18651 
18661  int unit,
18663  bcm_rx_trap_t *data);
18664 
18675  int unit,
18677  uint32 data,
18678  uint32 mask);
18679 
18690  int unit,
18692  uint32 *data,
18693  uint32 *mask);
18694 
18705  int unit,
18707  uint32 data,
18708  uint32 mask);
18709 
18720  int unit,
18722  uint32 *data,
18723  uint32 *mask);
18724 
18734 extern int bcm_field_qualify_Ptch(
18735  int unit,
18737  uint8 data,
18738  uint8 mask);
18739 
18749 extern int bcm_field_qualify_Ptch_get(
18750  int unit,
18752  uint8 *data,
18753  uint8 *mask);
18754 
18764 extern int bcm_field_qualify_MplsBos(
18765  int unit,
18767  uint8 data,
18768  uint8 mask);
18769 
18780  int unit,
18782  uint8 *data,
18783  uint8 *mask);
18784 
18794 extern int bcm_field_qualify_RxTrapData(
18795  int unit,
18797  uint32 data,
18798  uint32 mask);
18799 
18810  int unit,
18812  uint32 *data,
18813  uint32 *mask);
18814 
18825  int unit,
18827  uint8 data,
18828  uint8 mask);
18829 
18840  int unit,
18842  uint8 *data,
18843  uint8 *mask);
18844 
18855  int unit,
18857  uint32 data,
18858  uint32 mask);
18859 
18870  int unit,
18872  uint32 *data,
18873  uint32 *mask);
18874 
18885  int unit,
18887  uint8 data,
18888  uint8 mask);
18889 
18900  int unit,
18902  uint8 *data,
18903  uint8 *mask);
18904 
18915  int unit,
18917  uint32 data,
18918  uint32 mask);
18919 
18930  int unit,
18932  uint32 *data,
18933  uint32 *mask);
18934 
18945  int unit,
18947  uint8 data,
18948  uint8 mask);
18949 
18960  int unit,
18962  uint8 *data,
18963  uint8 *mask);
18964 
18975  int unit,
18977  uint8 data,
18978  uint8 mask);
18979 
18990  int unit,
18992  uint8 *data,
18993  uint8 *mask);
18994 
19005  int unit,
19007  uint32 data,
19008  uint32 mask);
19009 
19020  int unit,
19022  uint32 *data,
19023  uint32 *mask);
19024 
19034 extern int bcm_field_qualify_ISid(
19035  int unit,
19037  uint32 data,
19038  uint32 mask);
19039 
19049 extern int bcm_field_qualify_ISid_get(
19050  int unit,
19052  uint32 *data,
19053  uint32 *mask);
19054 
19065  int unit,
19067  uint64 data,
19068  uint64 mask);
19069 
19080  int unit,
19082  uint64 *data,
19083  uint64 *mask);
19084 
19094  int unit,
19096  bcm_gport_t data);
19097 
19107  int unit,
19109  bcm_gport_t *data);
19110 
19121  int unit,
19123  uint32 data,
19124  uint32 mask);
19125 
19136  int unit,
19138  uint32 *data,
19139  uint32 *mask);
19140 
19150 extern int bcm_field_qualify_Dhcp(
19151  int unit,
19153  uint8 data,
19154  uint8 mask);
19155 
19165 extern int bcm_field_qualify_Dhcp_get(
19166  int unit,
19168  uint8 *data,
19169  uint8 *mask);
19170 
19180 extern int bcm_field_qualify_SnoopCopy(
19181  int unit,
19183  uint8 data,
19184  uint8 mask);
19185 
19196  int unit,
19198  uint8 *data,
19199  uint8 *mask);
19200 
19211  int unit,
19213  uint8 data,
19214  uint8 mask);
19215 
19226  int unit,
19228  uint8 *data,
19229  uint8 *mask);
19230 
19241  int unit,
19243  uint32 data,
19244  uint32 mask);
19245 
19256  int unit,
19258  uint32 *data,
19259  uint32 *mask);
19260 
19271  int unit,
19274  int invert);
19275 
19288  int unit,
19290  int max_count,
19292  int *invert,
19293  int *count);
19294 
19305  int unit,
19308  int invert);
19309 
19323  int unit,
19325  int max_count,
19327  int *invert,
19328  int *count);
19329 
19340  int unit,
19343  int invert);
19344 
19358  int unit,
19360  int max_count,
19362  int *invert,
19363  int *count);
19364 
19375  int unit,
19377  uint8 data,
19378  uint8 mask);
19379 
19390  int unit,
19392  uint8 *data,
19393  uint8 *mask);
19394 
19405  int unit,
19407  uint8 data,
19408  uint8 mask);
19409 
19420  int unit,
19422  uint8 *data,
19423  uint8 *mask);
19424 
19435  int unit,
19437  uint8 data,
19438  uint8 mask);
19439 
19450  int unit,
19452  uint8 *data,
19453  uint8 *mask);
19454 
19464 extern int bcm_field_qualify_IpmcHit(
19465  int unit,
19467  uint8 data,
19468  uint8 mask);
19469 
19480  int unit,
19482  uint8 *data,
19483  uint8 *mask);
19484 
19495  int unit,
19497  uint64 data,
19498  uint64 mask);
19499 
19510  int unit,
19512  uint64 *data,
19513  uint64 *mask);
19514 
19525  int unit,
19527  uint64 data,
19528  uint64 mask);
19529 
19540  int unit,
19542  uint64 *data,
19543  uint64 *mask);
19544 
19555  int unit,
19557  uint64 data,
19558  uint64 mask);
19559 
19570  int unit,
19572  uint64 *data,
19573  uint64 *mask);
19574 
19585  int unit,
19587  uint64 data,
19588  uint64 mask);
19589 
19600  int unit,
19602  uint64 *data,
19603  uint64 *mask);
19604 
19614 extern int bcm_field_qualify_L2SrcValue(
19615  int unit,
19617  uint64 data,
19618  uint64 mask);
19619 
19630  int unit,
19632  uint64 *data,
19633  uint64 *mask);
19634 
19645  int unit,
19647  uint64 data,
19648  uint64 mask);
19649 
19660  int unit,
19662  uint64 *data,
19663  uint64 *mask);
19664 
19675  int unit,
19677  uint64 data,
19678  uint64 mask);
19679 
19690  int unit,
19692  uint64 *data,
19693  uint64 *mask);
19694 
19705  int unit,
19707  uint64 data,
19708  uint64 mask);
19709 
19720  int unit,
19722  uint64 *data,
19723  uint64 *mask);
19724 
19734 extern int bcm_field_qualify_IpmcValue(
19735  int unit,
19737  uint64 data,
19738  uint64 mask);
19739 
19750  int unit,
19752  uint64 *data,
19753  uint64 *mask);
19754 
19765  int unit,
19767  uint32 data,
19768  uint32 mask);
19769 
19780  int unit,
19782  uint32 *data,
19783  uint32 *mask);
19784 
19795  int unit,
19797  uint8 data,
19798  uint8 mask);
19799 
19810  int unit,
19812  uint8 *data,
19813  uint8 *mask);
19814 
19825  int unit,
19827  bcm_mac_t data,
19828  bcm_mac_t mask);
19829 
19840  int unit,
19842  bcm_mac_t *data,
19843  bcm_mac_t *mask);
19844 
19854 extern int bcm_field_qualify_LearnVlan(
19855  int unit,
19857  bcm_vlan_t data,
19858  bcm_vlan_t mask);
19859 
19870  int unit,
19872  bcm_vlan_t *data,
19873  bcm_vlan_t *mask);
19874 
19884  int unit,
19886  bcm_gport_t data);
19887 
19897  int unit,
19899  bcm_gport_t *data);
19900 
19911  int unit,
19913  uint32 data,
19914  uint32 mask);
19915 
19926  int unit,
19928  uint32 *data,
19929  uint32 *mask);
19930 
19940  int unit,
19942  uint8 data);
19943 
19953  int unit,
19955  uint8 *data);
19956 
19967  int unit,
19969  uint32 data,
19970  uint32 mask);
19971 
19982  int unit,
19984  uint32 *data,
19985  uint32 *mask);
19986 
19997  int unit,
19999  uint16 data,
20000  uint16 mask);
20001 
20012  int unit,
20014  uint16 *data,
20015  uint16 *mask);
20016 
20026 extern int bcm_field_qualify_PacketSize(
20027  int unit,
20029  uint32 data,
20030  uint32 mask);
20031 
20042  int unit,
20044  uint32 *data,
20045  uint32 *mask);
20046 
20057  int unit,
20059  bcm_mac_t data,
20060  bcm_mac_t mask);
20061 
20072  int unit,
20074  bcm_mac_t *data,
20075  bcm_mac_t *mask);
20076 
20087  int unit,
20089  bcm_mac_t data,
20090  bcm_mac_t mask);
20091 
20102  int unit,
20104  bcm_mac_t *data,
20105  bcm_mac_t *mask);
20106 
20117  int unit,
20119  uint16 data,
20120  uint16 mask);
20121 
20132  int unit,
20134  uint16 *data,
20135  uint16 *mask);
20136 
20146 extern int bcm_field_qualify_MplsLabel1(
20147  int unit,
20149  uint32 data,
20150  uint32 mask);
20151 
20162  int unit,
20164  uint32 *data,
20165  uint32 *mask);
20166 
20177  int unit,
20179  uint8 data,
20180  uint8 mask);
20181 
20192  int unit,
20194  uint8 *data,
20195  uint8 *mask);
20196 
20207  int unit,
20209  uint8 data,
20210  uint8 mask);
20211 
20222  int unit,
20224  uint8 *data,
20225  uint8 *mask);
20226 
20237  int unit,
20239  uint8 data,
20240  uint8 mask);
20241 
20252  int unit,
20254  uint8 *data,
20255  uint8 *mask);
20256 
20267  int unit,
20269  uint32 data,
20270  uint32 mask);
20271 
20282  int unit,
20284  uint32 *data,
20285  uint32 *mask);
20286 
20296 extern int bcm_field_qualify_MplsLabel2(
20297  int unit,
20299  uint32 data,
20300  uint32 mask);
20301 
20312  int unit,
20314  uint32 *data,
20315  uint32 *mask);
20316 
20327  int unit,
20329  uint8 data,
20330  uint8 mask);
20331 
20342  int unit,
20344  uint8 *data,
20345  uint8 *mask);
20346 
20357  int unit,
20359  uint8 data,
20360  uint8 mask);
20361 
20372  int unit,
20374  uint8 *data,
20375  uint8 *mask);
20376 
20387  int unit,
20389  uint8 data,
20390  uint8 mask);
20391 
20402  int unit,
20404  uint8 *data,
20405  uint8 *mask);
20406 
20417  int unit,
20419  uint32 data,
20420  uint32 mask);
20421 
20432  int unit,
20434  uint32 *data,
20435  uint32 *mask);
20436 
20446 extern int bcm_field_qualify_MplsLabel3(
20447  int unit,
20449  uint32 data,
20450  uint32 mask);
20451 
20462  int unit,
20464  uint32 *data,
20465  uint32 *mask);
20466 
20477  int unit,
20479  uint8 data,
20480  uint8 mask);
20481 
20492  int unit,
20494  uint8 *data,
20495  uint8 *mask);
20496 
20507  int unit,
20509  uint8 data,
20510  uint8 mask);
20511 
20522  int unit,
20524  uint8 *data,
20525  uint8 *mask);
20526 
20537  int unit,
20539  uint8 data,
20540  uint8 mask);
20541 
20552  int unit,
20554  uint8 *data,
20555  uint8 *mask);
20556 
20567  int unit,
20569  uint32 data,
20570  uint32 mask);
20571 
20582  int unit,
20584  uint32 *data,
20585  uint32 *mask);
20586 
20596 extern int bcm_field_qualify_Svtag(
20597  int unit,
20599  uint32 data,
20600  uint32 mask);
20601 
20612 extern int bcm_field_qualify_Svtag_get(
20613  int unit,
20615  uint32 *data,
20616  uint32 *mask);
20617 
20643  int unit,
20645  int group_pri,
20646  uint8 data,
20647  uint8 mask);
20648 
20660  int unit,
20662  int group_pri,
20663  uint8 *data,
20664  uint8 *mask);
20665 
20691  int unit,
20693  int group_pri,
20694  uint32 data,
20695  uint32 mask);
20696 
20708  int unit,
20710  int group_pri,
20711  uint32 *data,
20712  uint32 *mask);
20713 
20737  int unit,
20739  int group_pri,
20741 
20766 extern int bcm_field_action_config_add(
20767  int unit,
20770  int core_config_arr_len,
20771  bcm_field_action_core_config_t *core_config_arr);
20772 
20783 extern int bcm_field_action_config_get(
20784  int unit,
20787  int core_config_arr_len,
20788  bcm_field_action_core_config_t *core_config_arr);
20789 
20813  int unit,
20814  uint32 flags,
20815  int internal_action,
20816  uint32 bcm_action_size,
20817  bcm_field_internal_to_bcm_map_t *bcm_action_stage,
20818  uint32 *bcm_action_size_actual);
20819 
20841 extern int bcm_field_action_width_set(
20842  int unit,
20843  uint32 flags,
20844  int internal_action,
20845  uint32 width);
20846 
20864 extern int bcm_field_action_width_get(
20865  int unit,
20866  uint32 flags,
20867  int internal_action,
20868  uint32 *width_p);
20869 
20880  int unit,
20882  int group_pri,
20884 
20894 extern int bcm_field_qualify_VlanAction(
20895  int unit,
20897  uint32 data,
20898  uint32 mask);
20899 
20910  int unit,
20912  uint32 *data,
20913  uint32 *mask);
20914 
20932  int unit,
20934  bcm_if_t data,
20935  bcm_if_t mask);
20936 
20947  int unit,
20949  bcm_if_t *data,
20950  bcm_if_t *mask);
20951 
20969  int unit,
20971  bcm_if_t data,
20972  bcm_if_t mask);
20973 
20984  int unit,
20986  bcm_if_t *data,
20987  bcm_if_t *mask);
20988 
21013 extern int bcm_field_action_add(
21014  int unit,
21017  uint32 param0,
21018  uint32 param1);
21019 
21037 extern int bcm_field_action_delete(
21038  int unit,
21041  uint32 param0,
21042  uint32 param1);
21043 
21062 extern int bcm_field_class_size_get(
21063  int unit,
21065  uint16 *class_size);
21066 
21091 extern int bcm_field_action_class_add(
21092  int unit,
21094  bcm_field_class_info_t *class_info);
21095 
21117 extern int bcm_field_action_class_get(
21118  int unit,
21120  bcm_field_class_info_t *class_info);
21121 
21145 extern int bcm_field_action_mac_add(
21146  int unit,
21149  bcm_mac_t mac);
21150 
21174 extern int bcm_field_action_ports_add(
21175  int unit,
21178  bcm_pbmp_t pbmp);
21179 
21198 extern int bcm_field_action_get(
21199  int unit,
21202  uint32 *param0,
21203  uint32 *param1);
21204 
21222 extern int bcm_field_action_mac_get(
21223  int unit,
21226  bcm_mac_t *mac);
21227 
21245 extern int bcm_field_action_ports_get(
21246  int unit,
21249  bcm_pbmp_t *pbmp);
21250 
21270 extern int bcm_field_action_remove(
21271  int unit,
21274 
21287 extern int bcm_field_action_remove_all(
21288  int unit,
21290 
21291 #endif /* BCM_HIDE_DISPATCHABLE */
21292 
21307 
21322 
21323 #ifndef BCM_HIDE_DISPATCHABLE
21324 
21359  int unit,
21362  int count,
21363  bcm_field_extraction_field_t *extractions);
21364 
21399  int unit,
21402  int max_count,
21403  bcm_field_extraction_field_t *extractions,
21404  int *actual_count);
21405 
21422 extern int bcm_field_stat_create(
21423  int unit,
21425  int nstat,
21427  int *stat_id);
21428 
21445 extern int bcm_field_stat_create_id(
21446  int unit,
21448  int nstat,
21450  int stat_id);
21451 
21465 extern int bcm_field_stat_id_get(
21466  int unit,
21468  uint32 stat_id,
21469  uint32 *stat_counter_id);
21470 
21483 extern int bcm_field_stat_destroy(
21484  int unit,
21485  int stat_id);
21486 
21499 extern int bcm_field_stat_size(
21500  int unit,
21501  int stat_id,
21502  int *stat_size);
21503 
21517 extern int bcm_field_stat_config_get(
21518  int unit,
21519  int stat_id,
21520  int nstat,
21522 
21533 extern int bcm_field_stat_set(
21534  int unit,
21535  int stat_id,
21537  uint64 value);
21538 
21549 extern int bcm_field_stat_set32(
21550  int unit,
21551  int stat_id,
21553  uint32 value);
21554 
21566 extern int bcm_field_stat_all_set(
21567  int unit,
21568  int stat_id,
21569  uint64 value);
21570 
21582 extern int bcm_field_stat_all_set32(
21583  int unit,
21584  int stat_id,
21585  uint32 value);
21586 
21600 extern int bcm_field_stat_get(
21601  int unit,
21602  int stat_id,
21604  uint64 *value);
21605 
21619 extern int bcm_field_stat_sync_get(
21620  int unit,
21621  int stat_id,
21623  uint64 *value);
21624 
21635 extern int bcm_field_stat_get32(
21636  int unit,
21637  int stat_id,
21639  uint32 *value);
21640 
21655 extern int bcm_field_stat_sync_get32(
21656  int unit,
21657  int stat_id,
21659  uint32 *value);
21660 
21674 extern int bcm_field_stat_multi_get(
21675  int unit,
21676  int stat_id,
21677  int nstat,
21679  uint64 *value_arr);
21680 
21694 extern int bcm_field_stat_multi_get32(
21695  int unit,
21696  int stat_id,
21697  int nstat,
21699  uint32 *value_arr);
21700 
21713 extern int bcm_field_entry_stat_attach(
21714  int unit,
21716  int stat_id);
21717 
21737  int unit,
21739  int stat_id,
21740  bcm_field_stat_action_t stat_action);
21741 
21755 extern int bcm_field_entry_stat_detach(
21756  int unit,
21758  int stat_id);
21759 
21774 extern int bcm_field_entry_stat_get(
21775  int unit,
21777  int *stat_id);
21778 
21795  int unit,
21797  int *stat_id,
21798  bcm_field_stat_action_t *stat_action);
21799 
21800 #endif /* BCM_HIDE_DISPATCHABLE */
21801 
21815  bcm_field_oam_stat_action_t *oam_action);
21816 
21817 #ifndef BCM_HIDE_DISPATCHABLE
21818 
21835  int unit,
21837  bcm_field_oam_stat_action_t *oam_stat_action);
21838 
21851  int unit,
21853  bcm_field_oam_stat_action_t *oam_stat_action);
21854 
21865  int unit,
21867 
21881  int unit,
21883  bcm_field_oam_stat_action_t *oam_stat_action);
21884 
21903  int unit,
21905  int oam_stat_max,
21906  bcm_field_oam_stat_action_t *oam_stat_action,
21907  int *oam_stat_count);
21908 
21909 #endif /* BCM_HIDE_DISPATCHABLE */
21910 
21925 extern void bcm_field_llc_header_t_init(
21926  bcm_field_llc_header_t *llc_header);
21927 
21942 extern void bcm_field_snap_header_t_init(
21943  bcm_field_snap_header_t *snap_header);
21944 
21958 extern void bcm_field_qset_t_init(
21960 
21974 extern void bcm_field_aset_t_init(
21975  bcm_field_aset_t *aset);
21976 
21987 extern void bcm_field_presel_set_t_init(
21988  bcm_field_presel_set_t *presel_set);
21989 
22004 extern void bcm_field_group_status_t_init(
22005  bcm_field_group_status_t *fgroup);
22006 
22007 #ifndef BCM_HIDE_DISPATCHABLE
22008 
22009 #if defined(BROADCOM_DEBUG)
22010 
22024 extern int bcm_field_show(
22025  int unit,
22026  const char *pfx);
22027 #endif
22028 
22029 #if defined(BROADCOM_DEBUG)
22030 
22044 extern int bcm_field_entry_dump(
22045  int unit,
22047 #endif
22048 
22049 #if defined(BROADCOM_DEBUG)
22050 
22064 extern int bcm_field_group_dump(
22065  int unit,
22067 #endif
22068 
22069 #endif /* BCM_HIDE_DISPATCHABLE */
22070 
22072 #define bcmFieldQualifyOutVlan bcmFieldQualifyOuterVlan
22073 #define bcmFieldQualifyInVlan bcmFieldQualifyInnerVlan
22074 
22076 #define bcm_field_qualify_OutVlan bcm_field_qualify_OuterVlan
22077 #define bcm_field_qualify_InVlan bcm_field_qualify_InnerVlan
22078 
22079 #ifndef BCM_HIDE_DISPATCHABLE
22080 
22096 extern int bcm_field_stat_attach(
22097  int unit,
22099  uint32 stat_counter_id,
22100  uint32 *stat_id);
22101 
22113 extern int bcm_field_stat_detach(
22114  int unit,
22115  uint32 stat_id);
22116 
22132 extern int bcm_field_stat_counter_get(
22133  int unit,
22134  uint32 stat_id,
22138  bcm_stat_value_t *counter_values);
22139 
22157  int unit,
22158  uint32 stat_id,
22162  bcm_stat_value_t *counter_values);
22163 
22179 extern int bcm_field_stat_counter_set(
22180  int unit,
22181  uint32 stat_id,
22185  bcm_stat_value_t *counter_values);
22186 
22206  int unit,
22208  bcm_field_presel_t presel_id);
22209 
22221 extern int bcm_field_presel_destroy(
22222  int unit,
22223  bcm_field_presel_t presel_id);
22224 
22240 extern int bcm_field_group_presel_set(
22241  int unit,
22243  bcm_field_presel_set_t *presel);
22244 
22257 extern int bcm_field_group_presel_get(
22258  int unit,
22260  bcm_field_presel_set_t *presel);
22261 
22262 #endif /* BCM_HIDE_DISPATCHABLE */
22263 
22265 typedef struct bcm_field_entry_oper_s {
22269 
22271 #define BCM_FIELD_ENTRY_OPER_BACKUP (1 << 0)
22273 #define BCM_FIELD_ENTRY_OPER_RESTORE (1 << 1)
22275 #define BCM_FIELD_ENTRY_OPER_CLEANUP (1 << 2)
22277 #define BCM_FIELD_ENTRY_OPER_MASK (0x7)
22293 extern void bcm_field_entry_oper_t_init(
22294  bcm_field_entry_oper_t *entry_oper);
22295 
22296 #ifndef BCM_HIDE_DISPATCHABLE
22297 
22367 extern int bcm_field_entry_operation(
22368  int unit,
22369  bcm_field_entry_oper_t *entry_oper);
22370 
22386 extern int bcm_field_qualify_data_get(
22387  int unit,
22388  bcm_field_entry_t eid,
22389  int qual_id,
22390  uint16 length_max,
22391  uint8 *data,
22392  uint8 *mask,
22393  uint16 *length);
22394 
22487 extern int bcm_field_range_multi_create(
22488  int unit,
22489  bcm_field_range_t *range_id,
22490  uint32 create_flags,
22491  int count,
22492  uint32 *range_flags,
22493  uint32 *min_value,
22494  uint32 *max_value);
22495 
22559 extern int bcm_field_range_multi_get(
22560  int unit,
22561  bcm_field_range_t range_id,
22562  int max_count,
22563  uint32 *range_flags,
22564  uint32 *minimum_value,
22565  uint32 *maxamum_value,
22566  int *actual_count);
22567 
22579  int unit,
22581  uint8 data,
22582  uint8 mask);
22583 
22595  int unit,
22597  uint8 *data,
22598  uint8 *mask);
22599 
22612  int unit,
22614  uint8 data,
22615  uint8 mask);
22616 
22629  int unit,
22631  uint8 *data,
22632  uint8 *mask);
22633 
22645  int unit,
22647  uint32 data,
22648  uint32 mask);
22649 
22661  int unit,
22663  uint32 *data,
22664  uint32 *mask);
22665 
22677  int unit,
22679  uint32 data,
22680  uint32 mask);
22681 
22693  int unit,
22695  uint32 *data,
22696  uint32 *mask);
22697 
22709  int unit,
22711  uint64 data,
22712  uint64 mask);
22713 
22725  int unit,
22727  uint64 *data,
22728  uint64 *mask);
22729 
22741  int unit,
22743  uint64 data,
22744  uint64 mask);
22745 
22757  int unit,
22759  uint64 *data,
22760  uint64 *mask);
22761 
22773  int unit,
22775  uint64 data,
22776  uint64 mask);
22777 
22789  int unit,
22791  uint64 *data,
22792  uint64 *mask);
22793 
22805  int unit,
22807  uint64 data,
22808  uint64 mask);
22809 
22821  int unit,
22823  uint64 *data,
22824  uint64 *mask);
22825 
22837  int unit,
22839  uint64 data,
22840  uint64 mask);
22841 
22853  int unit,
22855  uint64 *data,
22856  uint64 *mask);
22857 
22869  int unit,
22871  uint64 data,
22872  uint64 mask);
22873 
22885  int unit,
22887  uint64 *data,
22888  uint64 *mask);
22889 
22901  int unit,
22903  uint64 data,
22904  uint64 mask);
22905 
22917  int unit,
22919  uint64 *data,
22920  uint64 *mask);
22921 
22933  int unit,
22935  uint64 data,
22936  uint64 mask);
22937 
22949  int unit,
22951  uint64 *data,
22952  uint64 *mask);
22953 
22965  int unit,
22967  uint8 data,
22968  uint8 mask);
22969 
22981  int unit,
22983  uint8 *data,
22984  uint8 *mask);
22985 
22997  int unit,
22999  uint8 data,
23000  uint8 mask);
23001 
23013  int unit,
23015  uint8 *data,
23016  uint8 *mask);
23017 
23029  int unit,
23031  uint8 data,
23032  uint8 mask);
23033 
23045  int unit,
23047  uint8 *data,
23048  uint8 *mask);
23049 
23061  int unit,
23063  uint8 data,
23064  uint8 mask);
23065 
23077  int unit,
23079  uint8 *data,
23080  uint8 *mask);
23081 
23093  int unit,
23095  uint8 data,
23096  uint8 mask);
23097 
23109  int unit,
23111  uint8 *data,
23112  uint8 *mask);
23113 
23125  int unit,
23127  uint8 data,
23128  uint8 mask);
23129 
23141  int unit,
23143  uint8 *data,
23144  uint8 *mask);
23145 
23157  int unit,
23159  uint8 data,
23160  uint8 mask);
23161 
23173  int unit,
23175  uint8 *data,
23176  uint8 *mask);
23177 
23189  int unit,
23191  uint8 data,
23192  uint8 mask);
23193 
23205  int unit,
23207  uint8 *data,
23208  uint8 *mask);
23209 
23220  int unit,
23222  bcm_gport_t port_id);
23223 
23234  int unit,
23236  bcm_gport_t *port_id);
23237 
23249  int unit,
23251  uint32 data,
23252  uint32 mask);
23253 
23265  int unit,
23267  uint32 *data,
23268  uint32 *mask);
23269 
23280 extern int bcm_field_qualify_VxlanFlags(
23281  int unit,
23283  uint8 data,
23284  uint8 mask);
23285 
23297  int unit,
23299  uint8 *data,
23300  uint8 *mask);
23301 
23312 extern int bcm_field_qualify_NatNeeded(
23313  int unit,
23315  uint8 data,
23316  uint8 mask);
23317 
23329  int unit,
23331  uint8 *data,
23332  uint8 *mask);
23333 
23345  int unit,
23347  uint8 data,
23348  uint8 mask);
23349 
23361  int unit,
23363  uint8 *data,
23364  uint8 *mask);
23365 
23377  int unit,
23379  uint8 data,
23380  uint8 mask);
23381 
23393  int unit,
23395  uint8 *data,
23396  uint8 *mask);
23397 
23408 extern int bcm_field_qualify_IcmpError(
23409  int unit,
23411  uint8 data,
23412  uint8 mask);
23413 
23425  int unit,
23427  uint8 *data,
23428  uint8 *mask);
23429 
23440 extern int bcm_field_qualify_TunnelId(
23441  int unit,
23443  uint32 data,
23444  uint32 mask);
23445 
23457  int unit,
23459  uint32 *data,
23460  uint32 *mask);
23461 
23473  int unit,
23475  uint32 data,
23476  uint32 mask);
23477 
23489  int unit,
23491  uint32 *data,
23492  uint32 *mask);
23493 
23505  int unit,
23507  uint32 data,
23508  uint32 mask);
23509 
23521  int unit,
23523  uint32 *data,
23524  uint32 *mask);
23525 
23535 extern int bcm_field_qualify_ArpOpcode(
23536  int unit,
23538  bcm_field_ArpOpcode_t data);
23539 
23550  int unit,
23552  bcm_field_ArpOpcode_t *data);
23553 
23565  int unit,
23567  bcm_vlan_t data,
23568  bcm_vlan_t mask);
23569 
23581  int unit,
23583  bcm_vlan_t *data,
23584  bcm_vlan_t *mask);
23585 
23597  int unit,
23599  bcm_vlan_t data,
23600  bcm_vlan_t mask);
23601 
23613  int unit,
23615  bcm_vlan_t *data,
23616  bcm_vlan_t *mask);
23617 
23629  int unit,
23631  uint8 data,
23632  uint8 mask);
23633 
23645  int unit,
23647  uint8 *data,
23648  uint8 *mask);
23649 
23661  int unit,
23663  uint8 data,
23664  uint8 mask);
23665 
23677  int unit,
23679  uint8 *data,
23680  uint8 *mask);
23681 
23693  int unit,
23695  bcm_vlan_t data,
23696  bcm_vlan_t mask);
23697 
23709  int unit,
23711  bcm_vlan_t *data,
23712  bcm_vlan_t *mask);
23713 
23725  int unit,
23727  bcm_vlan_t data,
23728  bcm_vlan_t mask);
23729 
23741  int unit,
23743  bcm_vlan_t *data,
23744  bcm_vlan_t *mask);
23745 
23757  int unit,
23759  uint8 data,
23760  uint8 mask);
23761 
23773  int unit,
23775  uint8 *data,
23776  uint8 *mask);
23777 
23789  int unit,
23791  uint8 data,
23792  uint8 mask);
23793 
23805  int unit,
23807  uint8 *data,
23808  uint8 *mask);
23809 
23821  int unit,
23823  uint8 data,
23824  uint8 mask);
23825 
23837  int unit,
23839  uint8 *data,
23840  uint8 *mask);
23841 
23853  int unit,
23855  uint32 data,
23856  uint32 mask);
23857 
23869  int unit,
23871  uint32 *data,
23872  uint32 *mask);
23873 
23885  int unit,
23887  uint8 data,
23888  uint8 mask);
23889 
23901  int unit,
23903  uint8 *data,
23904  uint8 *mask);
23905 
23917  int unit,
23919  uint8 data,
23920  uint8 mask);
23921 
23933  int unit,
23935  uint8 *data,
23936  uint8 *mask);
23937 
23949  int unit,
23951  uint8 data,
23952  uint8 mask);
23953 
23965  int unit,
23967  uint8 *data,
23968  uint8 *mask);
23969 
23981  int unit,
23983  uint32 data,
23984  uint32 mask);
23985 
23997  int unit,
23999  uint32 *data,
24000  uint32 *mask);
24001 
24013  int unit,
24015  uint32 data,
24016  uint32 mask);
24017 
24029  int unit,
24031  uint32 *data,
24032  uint32 *mask);
24033 
24045  int unit,
24047  uint8 data,
24048  uint8 mask);
24049 
24061  int unit,
24063  uint8 *data,
24064  uint8 *mask);
24065 
24077  int unit,
24079  uint8 data,
24080  uint8 mask);
24081 
24093  int unit,
24095  uint8 *data,
24096  uint8 *mask);
24097 
24109  int unit,
24111  uint16 data,
24112  uint16 mask);
24113 
24125  int unit,
24127  uint16 *data,
24128  uint16 *mask);
24129 
24141  int unit,
24143  uint8 data,
24144  uint8 mask);
24145 
24157  int unit,
24159  uint8 *data,
24160  uint8 *mask);
24161 
24173  int unit,
24175  uint16 data,
24176  uint16 mask);
24177 
24189  int unit,
24191  uint16 *data,
24192  uint16 *mask);
24193 
24205  int unit,
24207  uint8 data,
24208  uint8 mask);
24209 
24221  int unit,
24223  uint8 *data,
24224  uint8 *mask);
24225 
24236 extern int bcm_field_qualify_FcoeSOF(
24237  int unit,
24239  uint8 data,
24240  uint8 mask);
24241 
24253  int unit,
24255  uint8 *data,
24256  uint8 *mask);
24257 
24269  int unit,
24271  uint8 data,
24272  uint8 mask);
24273 
24285  int unit,
24287  uint8 *data,
24288  uint8 *mask);
24289 
24301  int unit,
24303  uint8 data,
24304  uint8 mask);
24305 
24317  int unit,
24319  uint8 *data,
24320  uint8 *mask);
24321 
24333  int unit,
24335  uint8 data,
24336  uint8 mask);
24337 
24349  int unit,
24351  uint8 *data,
24352  uint8 *mask);
24353 
24365  int unit,
24367  uint8 data,
24368  uint8 mask);
24369 
24381  int unit,
24383  uint8 *data,
24384  uint8 *mask);
24385 
24397  int unit,
24399  uint8 data,
24400  uint8 mask);
24401 
24413  int unit,
24415  uint8 *data,
24416  uint8 *mask);
24417 
24430  int unit,
24432  bcm_field_data_offset_base_t base_header,
24433  uint32 data,
24434  uint32 mask);
24435 
24448  int unit,
24450  bcm_field_data_offset_base_t *base_header,
24451  uint32 *data,
24452  uint32 *mask);
24453 
24454 #endif /* BCM_HIDE_DISPATCHABLE */
24455 
24461 
24474 
24475 #ifndef BCM_HIDE_DISPATCHABLE
24476 
24502 extern int bcm_field_qualify_Stage(
24503  int unit,
24505  bcm_field_stage_t data);
24506 
24515 extern int bcm_field_qualify_Stage_get(
24516  int unit,
24518  bcm_field_stage_t *data);
24519 
24531  int unit,
24533  uint8 data,
24534  uint8 mask);
24535 
24547  int unit,
24549  uint8 *data,
24550  uint8 *mask);
24551 
24563  int unit,
24565  uint16 data,
24566  uint16 mask);
24567 
24579  int unit,
24581  uint16 *data,
24582  uint16 *mask);
24583 
24594 extern int bcm_field_qualify_GroupClass(
24595  int unit,
24597  uint32 data,
24598  uint32 mask);
24599 
24611  int unit,
24613  uint32 *data,
24614  uint32 *mask);
24615 
24626 extern int bcm_field_qualify_UdfClass(
24627  int unit,
24629  uint32 data,
24630  uint32 mask);
24631 
24643  int unit,
24645  uint32 *data,
24646  uint32 *mask);
24647 
24659  int unit,
24661  uint32 data,
24662  uint32 mask);
24663 
24675  int unit,
24677  uint32 *data,
24678  uint32 *mask);
24679 
24691  int unit,
24693  uint32 data,
24694  uint32 mask);
24695 
24707  int unit,
24709  uint32 *data,
24710  uint32 *mask);
24711 
24722 extern int bcm_field_qualify_ITag(
24723  int unit,
24725  uint32 data,
24726  uint32 mask);
24727 
24738 extern int bcm_field_qualify_ITag_get(
24739  int unit,
24741  uint32 *data,
24742  uint32 *mask);
24743 
24755  int unit,
24757  uint32 data,
24758  uint32 mask);
24759 
24771  int unit,
24773  uint32 *data,
24774  uint32 *mask);
24775 
24787  int unit,
24789  uint8 data,
24790  uint8 mask);
24791 
24803  int unit,
24805  uint8 *data,
24806  uint8 *mask);
24807 
24819  int unit,
24822  bcm_multicast_t mask);
24823 
24835  int unit,
24838  bcm_multicast_t *mask);
24839 
24851  int unit,
24854  bcm_multicast_t mask);
24855 
24867  int unit,
24870  bcm_multicast_t *mask);
24871 
24872 #endif /* BCM_HIDE_DISPATCHABLE */
24873 
24875 typedef enum bcm_field_oam_type_e {
24880 
24881 #define BCM_FIELD_OAM_TYPE \
24882 { \
24883  "Ethernet", \
24884  "Mpls" \
24885 }
24886 
24900 
24901 #define BCM_FIELD_MPLS_OAM_CONTROL_PKT_TYPE \
24902 { \
24903  "Unknown", \
24904  "VCCV1", \
24905  "VCCV2", \
24906  "VCCV3", \
24907  "VCCV4_GAL_ACH" \
24908 }
24909 
24910 #ifndef BCM_HIDE_DISPATCHABLE
24911 
24921 extern int bcm_field_qualify_L3SrcBind(
24922  int unit,
24924  uint8 data,
24925  uint8 mask);
24926 
24938  int unit,
24940  uint8 *data,
24941  uint8 *mask);
24942 
24952 extern int bcm_field_qualify_ECid(
24953  int unit,
24955  uint32 data,
24956  uint32 mask);
24957 
24968 extern int bcm_field_qualify_ECid_get(
24969  int unit,
24971  uint32 *data,
24972  uint32 *mask);
24973 
24984  int unit,
24986  uint32 data,
24987  uint32 mask);
24988 
25000  int unit,
25002  uint32 *data,
25003  uint32 *mask);
25004 
25014 extern int bcm_field_qualify_ETag(
25015  int unit,
25017  uint64 data,
25018  uint64 mask);
25019 
25030 extern int bcm_field_qualify_ETag_get(
25031  int unit,
25033  uint64 *data,
25034  uint64 *mask);
25035 
25036 #endif /* BCM_HIDE_DISPATCHABLE */
25037 
25043 
25063 
25065 #define BCM_FIELD_RANGE_MULTI_WITH_ID 0x00000001
25066 #define BCM_FIELD_RANGE_MULTI_REPLACE 0x00000002
25069 #define BCM_FIELD_VXLAN_VNI_VALID 0x8
25072 #define BCM_FIELD_FIBRE_CHAN_ZONE_CHECK_NOP 0
25073 #define BCM_FIELD_FIBRE_CHAN_ZONE_CHECK_DISABLE 1
25074 #define BCM_FIELD_FIBRE_CHAN_ZONE_CHECK_ENABLE 2
25075 
25076 #ifndef BCM_HIDE_DISPATCHABLE
25077 
25088 extern int bcm_field_qualify_OamMdl(
25089  int unit,
25091  uint8 data,
25092  uint8 mask);
25093 
25104 extern int bcm_field_qualify_OamMdl_get(
25105  int unit,
25107  uint8 *data,
25108  uint8 *mask);
25109 
25120  int unit,
25122  uint8 data,
25123  uint8 mask);
25124 
25135  int unit,
25137  uint8 *data,
25138  uint8 *mask);
25139 
25149  int unit,
25151  bcm_gport_t niv_port_id);
25152 
25162  int unit,
25164  bcm_gport_t niv_port_id);
25165 
25176  int unit,
25178  bcm_gport_t *niv_port_id);
25179 
25190  int unit,
25192  bcm_gport_t *niv_port_id);
25193 
25202 extern int bcm_field_qualify_DstGport(
25203  int unit,
25205  bcm_gport_t port_id);
25206 
25216  int unit,
25218  bcm_gport_t *port_id);
25219 
25230  int unit,
25232  uint8 data,
25233  uint8 mask);
25234 
25245  int unit,
25247  uint8 *data,
25248  uint8 *mask);
25249 
25260  int unit,
25262  uint8 data,
25263  uint8 mask);
25264 
25275  int unit,
25277  uint8 *data,
25278  uint8 *mask);
25279 
25290  int unit,
25292  uint32 data,
25293  uint32 mask);
25294 
25305  int unit,
25307  uint32 *data,
25308  uint32 *mask);
25309 
25320  int unit,
25322  uint64 data,
25323  uint64 mask);
25324 
25335  int unit,
25337  uint64 *data,
25338  uint64 *mask);
25339 
25350  int unit,
25352  bcm_vlan_t data,
25353  bcm_vlan_t mask);
25354 
25365  int unit,
25367  bcm_vlan_t *data,
25368  bcm_vlan_t *mask);
25369 
25380  int unit,
25382  uint8 data,
25383  uint8 mask);
25384 
25395  int unit,
25397  uint8 *data,
25398  uint8 *mask);
25399 
25410  int unit,
25412  uint8 data,
25413  uint8 mask);
25414 
25425  int unit,
25427  uint8 *data,
25428  uint8 *mask);
25429 
25440  int unit,
25442  uint16 data,
25443  uint16 mask);
25444 
25455  int unit,
25457  uint16 *data,
25458  uint16 *mask);
25459 
25470  int unit,
25472  uint8 data,
25473  uint8 mask);
25474 
25485  int unit,
25487  uint8 *data,
25488  uint8 *mask);
25489 
25500  int unit,
25502  uint8 data,
25503  uint8 mask);
25504 
25515  int unit,
25517  uint8 *data,
25518  uint8 *mask);
25519 
25530  int unit,
25532  uint8 data,
25533  uint8 mask);
25534 
25545  int unit,
25547  uint8 *data,
25548  uint8 *mask);
25549 
25560  int unit,
25562  uint64 data,
25563  uint64 mask);
25564 
25575  int unit,
25577  uint64 *data,
25578  uint64 *mask);
25579 
25590  int unit,
25592  uint64 data,
25593  uint64 mask);
25594 
25605  int unit,
25607  uint64 *data,
25608  uint64 *mask);
25609 
25620  int unit,
25622  uint32 data,
25623  uint32 mask);
25624 
25635  int unit,
25637  uint32 *data,
25638  uint32 *mask);
25639 
25650  int unit,
25652  uint16 data,
25653  uint16 mask);
25654 
25665  int unit,
25667  uint16 *data,
25668  uint16 *mask);
25669 
25679 extern int bcm_field_qualify_L2GreVsid(
25680  int unit,
25682  uint32 data,
25683  uint32 mask);
25684 
25695  int unit,
25697  uint32 *data,
25698  uint32 *mask);
25699 
25710  int unit,
25712  uint8 data,
25713  uint8 mask);
25714 
25725  int unit,
25727  uint8 *data,
25728  uint8 *mask);
25729 
25739 extern int bcm_field_qualify_MimVlanPri(
25740  int unit,
25742  uint8 data,
25743  uint8 mask);
25744 
25755  int unit,
25757  uint8 *data,
25758  uint8 *mask);
25759 
25769 extern int bcm_field_qualify_MimVlanCfi(
25770  int unit,
25772  uint8 data,
25773  uint8 mask);
25774 
25785  int unit,
25787  uint8 *data,
25788  uint8 *mask);
25789 
25799 extern int bcm_field_qualify_Fhei(
25800  int unit,
25802  uint64 data,
25803  uint64 mask);
25804 
25814 extern int bcm_field_qualify_Fhei_get(
25815  int unit,
25817  uint64 *data,
25818  uint64 *mask);
25819 
25829 extern int bcm_field_qualify_FheiSize(
25830  int unit,
25832  uint32 data,
25833  uint32 mask);
25834 
25845  int unit,
25847  uint32 *data,
25848  uint32 *mask);
25849 
25859 extern int bcm_field_qualify_OamType(
25860  int unit,
25862  bcm_field_oam_type_t oam_type);
25863 
25874  int unit,
25876  bcm_field_oam_type_t *oam_type);
25877 
25888  int unit,
25890  uint8 data,
25891  uint8 mask);
25892 
25903  int unit,
25905  uint8 *data,
25906  uint8 *mask);
25907 
25918  int unit,
25920  uint8 data,
25921  uint8 mask);
25922 
25933  int unit,
25935  uint8 *data,
25936  uint8 *mask);
25937 
25948  int unit,
25950  uint8 data,
25951  uint8 mask);
25952 
25963  int unit,
25965  uint8 *data,
25966  uint8 *mask);
25967 
25978  int unit,
25980  uint8 data,
25981  uint8 mask);
25982 
25993  int unit,
25995  uint8 *data,
25996  uint8 *mask);
25997 
26008  int unit,
26010  uint8 data,
26011  uint8 mask);
26012 
26023  int unit,
26025  uint8 *data,
26026  uint8 *mask);
26027 
26038  int unit,
26040  uint8 data,
26041  uint8 mask);
26042 
26053  int unit,
26055  uint8 *data,
26056  uint8 *mask);
26057 
26068  int unit,
26070  uint8 data,
26071  uint8 mask);
26072 
26083  int unit,
26085  uint8 *data,
26086  uint8 *mask);
26087 
26098  int unit,
26100  uint8 data,
26101  uint8 mask);
26102 
26113  int unit,
26115  uint8 *data,
26116  uint8 *mask);
26117 
26128  int unit,
26130  uint8 data,
26131  uint8 mask);
26132 
26143  int unit,
26145  uint8 *data,
26146  uint8 *mask);
26147 
26158  int unit,
26160  uint8 data,
26161  uint8 mask);
26162 
26173  int unit,
26175  uint8 *data,
26176  uint8 *mask);
26177 
26188  int unit,
26190  uint8 data,
26191  uint8 mask);
26192 
26203  int unit,
26205  uint8 *data,
26206  uint8 *mask);
26207 
26218  int unit,
26220  uint8 data,
26221  uint8 mask);
26222 
26233  int unit,
26235  uint8 *data,
26236  uint8 *mask);
26237 
26248  int unit,
26250  uint8 data,
26251  uint8 mask);
26252 
26263  int unit,
26265  uint8 *data,
26266  uint8 *mask);
26267 
26278  int unit,
26280  uint8 data,
26281  uint8 mask);
26282 
26293  int unit,
26295  uint8 *data,
26296  uint8 *mask);
26297 
26307  int unit,
26310 
26320  int unit,
26323 
26334  int unit,
26336  uint16 data,
26337  uint16 mask);
26338 
26349  int unit,
26351  uint16 *data,
26352  uint16 *mask);
26353 
26364  int unit,
26366  uint16 data,
26367  uint16 mask);
26368 
26379  int unit,
26381  uint16 *data,
26382  uint16 *mask);
26383 
26394  int unit,
26396  uint16 data,
26397  uint16 mask);
26398 
26409  int unit,
26411  uint16 *data,
26412  uint16 *mask);
26413 
26424  int unit,
26426  bcm_vlan_t data,
26427  bcm_vlan_t mask);
26428 
26439  int unit,
26441  bcm_vlan_t *data,
26442  bcm_vlan_t *mask);
26443 
26454  int unit,
26456  bcm_vlan_t data,
26457  bcm_vlan_t mask);
26458 
26469  int unit,
26471  bcm_vlan_t *data,
26472  bcm_vlan_t *mask);
26473 
26483  int unit,
26485  bcm_gport_t vlan_port_id);
26486 
26496  int unit,
26498  bcm_gport_t vlan_port_id);
26499 
26510  int unit,
26512  bcm_gport_t *vlan_port_id);
26513 
26524  int unit,
26526  bcm_gport_t *vlan_port_id);
26527 
26537 extern int bcm_field_qualify_ClassId(
26538  int unit,
26540  uint32 data,
26541  uint32 mask);
26542 
26553  int unit,
26555  uint32 *data,
26556  uint32 *mask);
26557 
26569  int unit,
26571  uint32 data,
26572  uint32 mask);
26573 
26585  int unit,
26587  uint32 *data,
26588  uint32 *mask);
26589 
26600  int unit,
26602  bcm_gport_t vlan_port_id,
26603  bcm_gport_t vlan_port_mask);
26604 
26615  int unit,
26617  bcm_gport_t vlan_port_id,
26618  bcm_gport_t vlan_port_mask);
26619 
26631  int unit,
26633  bcm_gport_t *vlan_port_id,
26634  bcm_gport_t *vlan_port_mask);
26635 
26647  int unit,
26649  bcm_gport_t *vlan_port_id,
26650  bcm_gport_t *vlan_port_mask);
26651 
26662  int unit,
26664  bcm_gport_t vxlan_port_id,
26665  bcm_gport_t vxlan_port_mask);
26666 
26677  int unit,
26679  bcm_gport_t vxlan_port_id,
26680  bcm_gport_t vxlan_port_mask);
26681 
26693  int unit,
26695  bcm_gport_t *vxlan_port_id,
26696  bcm_gport_t *vxlan_port_mask);
26697 
26709  int unit,
26711  bcm_gport_t *vxlan_port_id,
26712  bcm_gport_t *vxlan_port_mask);
26713 
26724  int unit,
26726  bcm_gport_t wlan_port_id,
26727  bcm_gport_t wlan_port_mask);
26728 
26739  int unit,
26741  bcm_gport_t wlan_port_id,
26742  bcm_gport_t wlan_port_mask);
26743 
26755  int unit,
26757  bcm_gport_t *wlan_port_id,
26758  bcm_gport_t *wlan_port_mask);
26759 
26771  int unit,
26773  bcm_gport_t *wlan_port_id,
26774  bcm_gport_t *wlan_port_mask);
26775 
26786  int unit,
26788  bcm_gport_t mpls_port_id,
26789  bcm_gport_t mpls_port_mask);
26790 
26801  int unit,
26803  bcm_gport_t mpls_port_id,
26804  bcm_gport_t mpls_port_mask);
26805 
26817  int unit,
26819  bcm_gport_t *mpls_port_id,
26820  bcm_gport_t *mpls_port_mask);
26821 
26833  int unit,
26835  bcm_gport_t *mpls_port_id,
26836  bcm_gport_t *mpls_port_mask);
26837 
26848 extern int bcm_field_qualify_SrcGports(
26849  int unit,
26851  bcm_gport_t port_id,
26852  bcm_gport_t port_mask);
26853 
26863 extern int bcm_field_qualify_DstGports(
26864  int unit,
26866  bcm_gport_t port_id,
26867  bcm_gport_t port_mask);
26868 
26880  int unit,
26882  bcm_gport_t *port_id,
26883  bcm_gport_t *port_mask);
26884 
26896  int unit,
26898  bcm_gport_t *port_id,
26899  bcm_gport_t *port_mask);
26900 
26911  int unit,
26913  bcm_gport_t mim_port_id,
26914  bcm_gport_t mim_port_mask);
26915 
26926  int unit,
26928  bcm_gport_t mim_port_id,
26929  bcm_gport_t mim_port_mask);
26930 
26942  int unit,
26944  bcm_gport_t *mim_port_id,
26945  bcm_gport_t *mim_port_mask);
26946 
26958  int unit,
26960  bcm_gport_t *mim_port_id,
26961  bcm_gport_t *mim_port_mask);
26962 
26973  int unit,
26975  bcm_gport_t niv_port_id,
26976  bcm_gport_t niv_port_mask);
26977 
26988  int unit,
26990  bcm_gport_t niv_port_id,
26991  bcm_gport_t niv_port_mask);
26992 
27004  int unit,
27006  bcm_gport_t *niv_port_id,
27007  bcm_gport_t *niv_port_mask);
27008 
27020  int unit,
27022  bcm_gport_t *niv_port_id,
27023  bcm_gport_t *niv_port_mask);
27024 
27035  int unit,
27037  bcm_gport_t port_id,
27038  bcm_gport_t port_mask);
27039 
27051  int unit,
27053  bcm_gport_t *port_id,
27054  bcm_gport_t *port_mask);
27055 
27066  int unit,
27068  uint32 data,
27069  uint32 mask);
27070 
27081  int unit,
27083  uint32 *data,
27084  uint32 *mask);
27085 
27096  int unit,
27098  uint8 data,
27099  uint8 mask);
27100 
27111  int unit,
27113  uint8 *data,
27114  uint8 *mask);
27115 
27116 #endif /* BCM_HIDE_DISPATCHABLE */
27117 
27140 
27141 #define BCM_FIELD_HINT_TYPE_STRINGS \
27142 { \
27143  "Compression", \
27144  "Extraction", \
27145  "GroupAutoExpansion", \
27146  "ExactMatch", \
27147  "GroupIdenticalLookupId", \
27148  "IngressFlowtracker", \
27149  "FlexCtrOpaqueObjectSel", \
27150  "PolicerPoolSel" \
27151 }
27152 
27158 #define BCM_FIELD_HINT_EXACT_MATCH_ONLY (1 << 0)
27159 #define BCM_FIELD_GROUP_AUTO_EXPANSION_SMALL (1 << 1)
27161 #define BCM_FIELD_GROUP_AUTO_EXPANSION_LARGE (1 << 2)
27163 #define BCM_FIELD_GROUP_MAX_SIZE_HARD_LIMIT (1 << 3)
27165 #define BCM_FIELD_HINT_EXACT_MATCH_GROUP_PRIORITY (1 << 4)
27167 #define BCM_FIELD_HINT_INGRESS_FLOWTRACKER_GROUP_SECONDARY_SLICE (1 << 5)
27173 typedef struct bcm_field_hint_s {
27190  int priority;
27193  int value;
27196 
27211 extern void bcm_field_hint_t_init(
27212  bcm_field_hint_t *hint);
27213 
27214 #ifndef BCM_HIDE_DISPATCHABLE
27215 
27228 extern int bcm_field_hints_create(
27229  int unit,
27230  bcm_field_hintid_t *hint_id);
27231 
27244 extern int bcm_field_hints_add(
27245  int unit,
27246  bcm_field_hintid_t hint_id,
27247  bcm_field_hint_t *hint);
27248 
27267 extern int bcm_field_hints_get(
27268  int unit,
27269  bcm_field_hintid_t hint_id,
27270  bcm_field_hint_t *hint);
27271 
27284 extern int bcm_field_hints_delete(
27285  int unit,
27286  bcm_field_hintid_t hint_id,
27287  bcm_field_hint_t *hint);
27288 
27301 extern int bcm_field_hints_delete_all(
27302  int unit,
27303  bcm_field_hintid_t hint_id);
27304 
27317 extern int bcm_field_hints_destroy(
27318  int unit,
27319  bcm_field_hintid_t hint_id);
27320 
27331  int unit,
27333  uint8 data,
27334  uint8 mask);
27335 
27346  int unit,
27348  uint8 *data,
27349  uint8 *mask);
27350 
27360 extern int bcm_field_qualify_OamInLifId(
27361  int unit,
27363  uint32 data,
27364  uint32 mask);
27365 
27376  int unit,
27378  uint32 *data,
27379  uint32 *mask);
27380 
27390 extern int bcm_field_qualify_OamUpMep(
27391  int unit,
27393  uint8 data,
27394  uint8 mask);
27395 
27406  int unit,
27408  uint8 *data,
27409  uint8 *mask);
27410 
27420 extern int bcm_field_qualify_OamSubtype(
27421  int unit,
27423  uint8 data,
27424  uint8 mask);
27425 
27436  int unit,
27438  uint8 *data,
27439  uint8 *mask);
27440 
27451  int unit,
27453  uint32 data,
27454  uint32 mask);
27455 
27466  int unit,
27468  uint32 *data,
27469  uint32 *mask);
27470 
27481  int unit,
27483  uint32 data,
27484  uint32 mask);
27485 
27496  int unit,
27498  uint32 *data,
27499  uint32 *mask);
27500 
27510 extern int bcm_field_qualify_OamMepId(
27511  int unit,
27513  uint32 data,
27514  uint32 mask);
27515 
27526  int unit,
27528  uint32 *data,
27529  uint32 *mask);
27530 
27541  int unit,
27543  uint8 data,
27544  uint8 mask);
27545 
27556  int unit,
27558  uint8 *data,
27559  uint8 *mask);
27560 
27571  int unit,
27573  uint64 data,
27574  uint64 mask);
27575 
27586  int unit,
27588  uint64 *data,
27589  uint64 *mask);
27590 
27601  int unit,
27603  uint32 data,
27604  uint32 mask);
27605 
27616  int unit,
27618  uint32 *data,
27619  uint32 *mask);
27620 
27631  int unit,
27633  uint32 data,
27634  uint32 mask);
27635 
27646  int unit,
27648  uint32 *data,
27649  uint32 *mask);
27650 
27661  int unit,
27663  uint32 data,
27664  uint32 mask);
27665 
27676  int unit,
27678  uint32 *data,
27679  uint32 *mask);
27680 
27691  int unit,
27693  uint32 data,
27694  uint32 mask);
27695 
27706  int unit,
27708  uint32 *data,
27709  uint32 *mask);
27710 
27720 extern int bcm_field_qualify_MplsOamACH(
27721  int unit,
27723  uint32 data,
27724  uint32 mask);
27725 
27736  int unit,
27738  uint32 *data,
27739  uint32 *mask);
27740 
27751  int unit,
27753  uint32 data,
27754  uint32 mask);
27755 
27766  int unit,
27768  uint32 *data,
27769  uint32 *mask);
27770 
27781  int unit,
27783  uint32 data,
27784  uint32 mask);
27785 
27796  int unit,
27798  uint32 *data,
27799  uint32 *mask);
27800 
27812  int unit,
27815  bcm_multicast_t mask);
27816 
27828  int unit,
27831  bcm_multicast_t *mask);
27832 
27833 #endif /* BCM_HIDE_DISPATCHABLE */
27834 
27845 
27846 #define BCM_FIELD_OPER_MODE_STRINGS \
27847 { \
27848  "Global", \
27849  "PipeLocal" \
27850 }
27851 
27852 #ifndef BCM_HIDE_DISPATCHABLE
27853 
27870  int unit,
27873 
27888  int unit,
27891 
27902  int unit,
27904  bcm_pbmp_t data,
27905  bcm_pbmp_t mask);
27906 
27918  int unit,
27920  bcm_pbmp_t *data,
27921  bcm_pbmp_t *mask);
27922 
27934  int unit,
27936  uint8 data,
27937  uint8 mask);
27938 
27950  int unit,
27952  uint8 *data,
27953  uint8 *mask);
27954 
27966  int unit,
27968  uint64 data,
27969  uint64 mask);
27970 
27982  int unit,
27984  uint64 *data,
27985  uint64 *mask);
27986 
27997 extern int bcm_field_qualify_FcoeOxID(
27998  int unit,
28000  uint16 data,
28001  uint16 mask);
28002 
28014  int unit,
28016  uint16 *data,
28017  uint16 *mask);
28018 
28029 extern int bcm_field_qualify_FcoeRxID(
28030  int unit,
28032  uint16 data,
28033  uint16 mask);
28034 
28046  int unit,
28048  uint16 *data,
28049  uint16 *mask);
28050 
28062  int unit,
28064  bcm_class_t data,
28065  bcm_class_t mask);
28066 
28078  int unit,
28080  bcm_class_t *data,
28081  bcm_class_t *mask);
28082 
28094  int unit,
28096  bcm_class_t data,
28097  bcm_class_t mask);
28098 
28110  int unit,
28112  bcm_class_t *data,
28113  bcm_class_t *mask);
28114 
28126  int unit,
28128  bcm_class_t data,
28129  bcm_class_t mask);
28130 
28142  int unit,
28144  bcm_class_t *data,
28145  bcm_class_t *mask);
28146 
28158  int unit,
28160  bcm_class_t data,
28161  bcm_class_t mask);
28162 
28174  int unit,
28176  bcm_class_t *data,
28177  bcm_class_t *mask);
28178 
28189 extern int bcm_field_qualify_SrcIpClass(
28190  int unit,
28192  bcm_class_t data,
28193  bcm_class_t mask);
28194 
28206  int unit,
28208  bcm_class_t *data,
28209  bcm_class_t *mask);
28210 
28222  int unit,
28224  bcm_class_t data,
28225  bcm_class_t mask);
28226 
28238  int unit,
28240  bcm_class_t *data,
28241  bcm_class_t *mask);
28242 
28254  int unit,
28256  bcm_class_t data,
28257  bcm_class_t mask);
28258 
28270  int unit,
28272  bcm_class_t *data,
28273  bcm_class_t *mask);
28274 
28286  int unit,
28288  bcm_class_t data,
28289  bcm_class_t mask);
28290 
28302  int unit,
28304  bcm_class_t *data,
28305  bcm_class_t *mask);
28306 
28318  int unit,
28320  bcm_class_t data,
28321  bcm_class_t mask);
28322 
28334  int unit,
28336  bcm_class_t *data,
28337  bcm_class_t *mask);
28338 
28350  int unit,
28352  bcm_class_t data,
28353  bcm_class_t mask);
28354 
28366  int unit,
28368  bcm_class_t *data,
28369  bcm_class_t *mask);
28370 
28382  int unit,
28384  bcm_class_t data,
28385  bcm_class_t mask);
28386 
28398  int unit,
28400  bcm_class_t *data,
28401  bcm_class_t *mask);
28402 
28414  int unit,
28416  bcm_class_t data,
28417  bcm_class_t mask);
28418 
28430  int unit,
28432  bcm_class_t *data,
28433  bcm_class_t *mask);
28434 
28446  int unit,
28448  bcm_class_t data,
28449  bcm_class_t mask);
28450 
28462  int unit,
28464  bcm_class_t *data,
28465  bcm_class_t *mask);
28466 
28477 extern int bcm_field_qualify_DstIpClass(
28478  int unit,
28480  bcm_class_t data,
28481  bcm_class_t mask);
28482 
28494  int unit,
28496  bcm_class_t *data,
28497  bcm_class_t *mask);
28498 
28510  int unit,
28512  bcm_class_t data,
28513  bcm_class_t mask);
28514 
28526  int unit,
28528  bcm_class_t *data,
28529  bcm_class_t *mask);
28530 
28542  int unit,
28544  bcm_class_t data,
28545  bcm_class_t mask);
28546 
28558  int unit,
28560  bcm_class_t *data,
28561  bcm_class_t *mask);
28562 
28574  int unit,
28576  bcm_class_t data,
28577  bcm_class_t mask);
28578 
28590  int unit,
28592  bcm_class_t *data,
28593  bcm_class_t *mask);
28594 
28606  int unit,
28608  bcm_class_t data,
28609  bcm_class_t mask);
28610 
28622  int unit,
28624  bcm_class_t *data,
28625  bcm_class_t *mask);
28626 
28638  int unit,
28640  bcm_class_t data,
28641  bcm_class_t mask);
28642 
28654  int unit,
28656  bcm_class_t *data,
28657  bcm_class_t *mask);
28658 
28670  int unit,
28672  bcm_class_t data,
28673  bcm_class_t mask);
28674 
28686  int unit,
28688  bcm_class_t *data,
28689  bcm_class_t *mask);
28690 
28702  int unit,
28704  bcm_class_t data,
28705  bcm_class_t mask);
28706 
28718  int unit,
28720  bcm_class_t *data,
28721  bcm_class_t *mask);
28722 
28734  int unit,
28736  bcm_class_t data,
28737  bcm_class_t mask);
28738 
28750  int unit,
28752  bcm_class_t *data,
28753  bcm_class_t *mask);
28754 
28766  int unit,
28768  bcm_class_t data,
28769  bcm_class_t mask);
28770 
28782  int unit,
28784  bcm_class_t *data,
28785  bcm_class_t *mask);
28786 
28798  int unit,
28800  bcm_class_t data,
28801  bcm_class_t mask);
28802 
28814  int unit,
28816  bcm_class_t *data,
28817  bcm_class_t *mask);
28818 
28830  int unit,
28832  bcm_class_t data,
28833  bcm_class_t mask);
28834 
28846  int unit,
28848  bcm_class_t *data,
28849  bcm_class_t *mask);
28850 
28862  int unit,
28864  bcm_class_t data,
28865  bcm_class_t mask);
28866 
28878  int unit,
28880  bcm_class_t *data,
28881  bcm_class_t *mask);
28882 
28894  int unit,
28896  bcm_class_t data,
28897  bcm_class_t mask);
28898 
28910  int unit,
28912  bcm_class_t *data,
28913  bcm_class_t *mask);
28914 
28926  int unit,
28928  bcm_class_t data,
28929  bcm_class_t mask);
28930 
28942  int unit,
28944  bcm_class_t *data,
28945  bcm_class_t *mask);
28946 
28958  int unit,
28960  bcm_class_t data,
28961  bcm_class_t mask);
28962 
28974  int unit,
28976  bcm_class_t *data,
28977  bcm_class_t *mask);
28978 
28990  int unit,
28992  bcm_class_t data,
28993  bcm_class_t mask);
28994 
29006  int unit,
29008  bcm_class_t *data,
29009  bcm_class_t *mask);
29010 
29022  int unit,
29024  bcm_class_t data,
29025  bcm_class_t mask);
29026 
29038  int unit,
29040  bcm_class_t *data,
29041  bcm_class_t *mask);
29042 
29054  int unit,
29056  bcm_class_t data,
29057  bcm_class_t mask);
29058 
29070  int unit,
29072  bcm_class_t *data,
29073  bcm_class_t *mask);
29074 
29086  int unit,
29088  bcm_class_t data,
29089  bcm_class_t mask);
29090 
29102  int unit,
29104  bcm_class_t *data,
29105  bcm_class_t *mask);
29106 
29118  int unit,
29120  bcm_class_t data,
29121  bcm_class_t mask);
29122 
29134  int unit,
29136  bcm_class_t *data,
29137  bcm_class_t *mask);
29138 
29150  int unit,
29152  bcm_class_t data,
29153  bcm_class_t mask);
29154 
29166  int unit,
29168  bcm_class_t *data,
29169  bcm_class_t *mask);
29170 
29182  int unit,
29184  bcm_class_t data,
29185  bcm_class_t mask);
29186 
29198  int unit,
29200  bcm_class_t *data,
29201  bcm_class_t *mask);
29202 
29203 #endif /* BCM_HIDE_DISPATCHABLE */
29204 
29211 
29212 #define BCM_FIELD_REDIRECT_TYPE \
29213 { \
29214  "bcmFieldRedirectTypeL3", \
29215  "bcmFieldRedirectTypeAll" \
29216 }
29217 
29218 #ifndef BCM_HIDE_DISPATCHABLE
29219 
29231  int unit,
29233  uint8 data,
29234  uint8 mask);
29235 
29247  int unit,
29249  uint8 *data,
29250  uint8 *mask);
29251 
29263  int unit,
29266  bcm_multicast_t mask);
29267 
29279  int unit,
29282  bcm_multicast_t *mask);
29283 
29295  int unit,
29297  uint8 data,
29298  uint8 mask);
29299 
29311  int unit,
29313  uint8 *data,
29314  uint8 *mask);
29315 
29327  int unit,
29329  bcm_gport_t port_id,
29330  bcm_gport_t port_mask);
29331 
29343  int unit,
29345  bcm_gport_t *port_id,
29346  bcm_gport_t *port_mask);
29347 
29359  int unit,
29361  bcm_gport_t port_id,
29362  bcm_gport_t mask);
29363 
29375  int unit,
29377  bcm_gport_t *port_id,
29378  bcm_gport_t *port_mask);
29379 
29391  int unit,
29393  bcm_gport_t port_id,
29394  bcm_gport_t port_mask);
29395 
29407  int unit,
29409  bcm_gport_t *port_id,
29410  bcm_gport_t *port_mask);
29411 
29423  int unit,
29425  bcm_gport_t port_id,
29426  bcm_gport_t port_mask);
29427 
29439  int unit,
29441  bcm_gport_t *port_id,
29442  bcm_gport_t *port_mask);
29443 
29455  int unit,
29457  bcm_gport_t port_id,
29458  bcm_gport_t port_mask);
29459 
29471  int unit,
29473  bcm_gport_t *port_id,
29474  bcm_gport_t *port_mask);
29475 
29487  int unit,
29489  bcm_gport_t port_id,
29490  bcm_gport_t port_mask);
29491 
29503  int unit,
29505  bcm_gport_t *port_id,
29506  bcm_gport_t *port_mask);
29507 
29519  int unit,
29521  uint8 data,
29522  uint8 mask);
29523 
29535  int unit,
29537  uint8 *data,
29538  uint8 *mask);
29539 
29549 extern int bcm_field_qualify_HiGigColor(
29550  int unit,
29552  uint8 color);
29553 
29564  int unit,
29566  uint8 *color);
29567 
29579  int unit,
29581  uint8 data,
29582  uint8 mask);
29583 
29595  int unit,
29597  uint8 *data,
29598  uint8 *mask);
29599 
29611  int unit,
29613  uint8 data,
29614  uint8 mask);
29615 
29627  int unit,
29629  uint8 *data,
29630  uint8 *mask);
29631 
29643  int unit,
29645  uint8 data,
29646  uint8 mask);
29647 
29659  int unit,
29661  uint8 *data,
29662  uint8 *mask);
29663 
29675  int unit,
29677  bcm_trunk_t data,
29678  bcm_trunk_t mask);
29679 
29691  int unit,
29693  bcm_trunk_t *data,
29694  bcm_trunk_t *mask);
29695 
29707  int unit,
29709  uint8 data,
29710  uint8 mask);
29711 
29723  int unit,
29725  uint8 *data,
29726  uint8 *mask);
29727 
29738 extern int bcm_field_qualify_HiGigLabel(
29739  int unit,
29741  uint32 data,
29742  uint32 mask);
29743 
29755  int unit,
29757  uint32 *data,
29758  uint32 *mask);
29759 
29771  int unit,
29773  uint32 data,
29774  uint32 mask);
29775 
29787  int unit,
29789  uint32 *data,
29790  uint32 *mask);
29791 
29802 extern int bcm_field_qualify_HiGigVlan(
29803  int unit,
29805  uint16 data,
29806  uint16 mask);
29807 
29819  int unit,
29821  uint16 *data,
29822  uint16 *mask);
29823 
29835  int unit,
29837  uint8 data,
29838  uint8 mask);
29839 
29851  int unit,
29853  uint8 *data,
29854  uint8 *mask);
29855 
29867  int unit,
29869  uint8 data,
29870  uint8 mask);
29871 
29883  int unit,
29885  uint8 *data,
29886  uint8 *mask);
29887 
29899  int unit,
29901  uint16 data,
29902  uint16 mask);
29903 
29915  int unit,
29917  uint16 *data,
29918  uint16 *mask);
29919 
29931  int unit,
29933  uint8 data,
29934  uint8 mask);
29935 
29947  int unit,
29949  uint8 *data,
29950  uint8 *mask);
29951 
29962 extern int bcm_field_qualify_HiGigVni(
29963  int unit,
29965  uint16 data,
29966  uint16 mask);
29967 
29979  int unit,
29981  uint16 *data,
29982  uint16 *mask);
29983 
29995  int unit,
29997  bcm_gport_t port_id,
29998  bcm_gport_t port_mask);
29999 
30011  int unit,
30013  bcm_gport_t *port_id,
30014  bcm_gport_t *port_mask);
30015 
30027  int unit,
30029  uint16 data,
30030  uint16 mask);
30031 
30043  int unit,
30045  uint16 *data,
30046  uint16 *mask);
30047 
30059  int unit,
30061  uint32 data,
30062  uint32 mask);
30063 
30075  int unit,
30077  uint32 *data,
30078  uint32 *mask);
30079 
30091  int unit,
30093  bcm_gport_t port_id,
30094  bcm_gport_t port_mask);
30095 
30107  int unit,
30109  bcm_gport_t *port_id,
30110  bcm_gport_t *port_mask);
30111 
30123  int unit,
30125  uint8 data,
30126  uint8 mask);
30127 
30139  int unit,
30141  uint8 *data,
30142  uint8 *mask);
30143 
30155  int unit,
30157  uint8 data,
30158  uint8 mask);
30159 
30171  int unit,
30173  uint8 *data,
30174  uint8 *mask);
30175 
30187  int unit,
30189  uint8 data,
30190  uint8 mask);
30191 
30203  int unit,
30205  uint8 *data,
30206  uint8 *mask);
30207 
30219  int unit,
30221  uint8 data,
30222  uint8 mask);
30223 
30235  int unit,
30237  uint8 *data,
30238  uint8 *mask);
30239 
30251  int unit,
30253  uint16 data,
30254  uint16 mask);
30255 
30267  int unit,
30269  uint16 *data,
30270  uint16 *mask);
30271 
30283  int unit,
30285  uint8 data,
30286  uint8 mask);
30287 
30299  int unit,
30301  uint8 *data,
30302  uint8 *mask);
30303 
30315  int unit,
30317  uint8 data,
30318  uint8 mask);
30319 
30331  int unit,
30333  uint8 *data,
30334  uint8 *mask);
30335 
30347  int unit,
30349  uint8 data,
30350  uint8 mask);
30351 
30363  int unit,
30365  uint8 *data,
30366  uint8 *mask);
30367 
30379  int unit,
30381  bcm_gport_t port_id,
30382  bcm_gport_t port_mask);
30383 
30395  int unit,
30397  bcm_gport_t *port_id,
30398  bcm_gport_t *port_mask);
30399 
30411  int unit,
30413  uint8 data,
30414  uint8 mask);
30415 
30427  int unit,
30429  uint8 *data,
30430  uint8 *mask);
30431 
30443  int unit,
30445  uint8 data,
30446  uint8 mask);
30447 
30459  int unit,
30461  uint8 *data,
30462  uint8 *mask);
30463 
30474  int unit,
30476  uint8 color);
30477 
30488  int unit,
30490  uint8 *color);
30491 
30503  int unit,
30505  uint8 data,
30506  uint8 mask);
30507 
30519  int unit,
30521  uint8 *data,
30522  uint8 *mask);
30523 
30535  int unit,
30537  bcm_gport_t port_id,
30538  bcm_gport_t port_mask);
30539 
30551  int unit,
30553  bcm_gport_t *port_id,
30554  bcm_gport_t *port_mask);
30555 
30556 #endif /* BCM_HIDE_DISPATCHABLE */
30557 
30566 
30567 #define BCM_FIELD_SRC_CLASS_MODE_TYPE \
30568 { \
30569  "bcmFieldSrcClassModeDefault", \
30570  "bcmFieldSrcClassModeSDN", \
30571  "bcmFieldSrcClassModeBalanced", \
30572  "bcmFieldSrcClassModeOverlayNetworks" \
30573 }
30574 
30576 typedef struct bcm_field_src_class_s {
30589 
30600 extern void bcm_field_src_class_t_init(
30601  bcm_field_src_class_t *src_class);
30602 
30603 #ifndef BCM_HIDE_DISPATCHABLE
30604 
30622  int unit,
30624  bcm_pbmp_t pbmp,
30626 
30644  int unit,
30646  bcm_pbmp_t pbmp,
30648 
30666  int unit,
30668  bcm_pbmp_t pbmp,
30669  bcm_field_src_class_t data,
30670  bcm_field_src_class_t mask);
30671 
30689  int unit,
30691  bcm_pbmp_t pbmp,
30692  bcm_field_src_class_t *data,
30693  bcm_field_src_class_t *mask);
30694 
30706  int unit,
30708  uint8 data,
30709  uint8 mask);
30710 
30722  int unit,
30724  uint8 *data,
30725  uint8 *mask);
30726 
30738  int unit,
30740  uint32 data,
30741  uint32 mask);
30742 
30754  int unit,
30756  uint32 *data,
30757  uint32 *mask);
30758 
30769 extern int bcm_field_qualify_MimlPkt(
30770  int unit,
30772  uint8 data,
30773  uint8 mask);
30774 
30786  int unit,
30788  uint8 *data,
30789  uint8 *mask);
30790 
30801 extern int bcm_field_qualify_MimlSrcMac(
30802  int unit,
30804  bcm_mac_t data,
30805  bcm_mac_t mask);
30806 
30817 extern int bcm_field_qualify_MimlDstMac(
30818  int unit,
30820  bcm_mac_t data,
30821  bcm_mac_t mask);
30822 
30836  int unit,
30838  bcm_pbmp_t data,
30839  bcm_pbmp_t mask);
30840 
30855  int unit,
30857  bcm_pbmp_t *data,
30858  bcm_pbmp_t *mask);
30859 
30871  int unit,
30873  bcm_pbmp_t data,
30874  bcm_pbmp_t mask);
30875 
30888  int unit,
30890  bcm_pbmp_t *data,
30891  bcm_pbmp_t *mask);
30892 
30904  int unit,
30906  bcm_pbmp_t data,
30907  bcm_pbmp_t mask);
30908 
30923  int unit,
30925  bcm_pbmp_t *data,
30926  bcm_pbmp_t *mask);
30927 
30939  int unit,
30941  bcm_mac_t *data,
30942  bcm_mac_t *mask);
30943 
30955  int unit,
30957  bcm_mac_t *data,
30958  bcm_mac_t *mask);
30959 
30970 extern int bcm_field_qualify_MimlVlan(
30971  int unit,
30973  bcm_vlan_t data,
30974  bcm_vlan_t mask);
30975 
30987  int unit,
30989  bcm_vlan_t *data,
30990  bcm_vlan_t *mask);
30991 
31002 extern int bcm_field_qualify_MimlVlanId(
31003  int unit,
31005  bcm_vlan_t data,
31006  bcm_vlan_t mask);
31007 
31019  int unit,
31021  bcm_vlan_t *data,
31022  bcm_vlan_t *mask);
31023 
31035  int unit,
31037  uint8 data,
31038  uint8 mask);
31039 
31051  int unit,
31053  uint8 *data,
31054  uint8 *mask);
31055 
31067  int unit,
31069  uint8 data,
31070  uint8 mask);
31071 
31083  int unit,
31085  uint8 *data,
31086  uint8 *mask);
31087 
31099  int unit,
31101  uint32 data,
31102  uint32 mask);
31103 
31115  int unit,
31117  uint32 *data,
31118  uint32 *mask);
31119 
31131  int unit,
31133  uint8 data,
31134  uint8 mask);
31135 
31147  int unit,
31149  uint8 *data,
31150  uint8 *mask);
31151 
31163  int unit,
31165  uint8 data,
31166  uint8 mask);
31167 
31179  int unit,
31181  uint8 *data,
31182  uint8 *mask);
31183 
31195  int unit,
31197  uint8 data,
31198  uint8 mask);
31199 
31211  int unit,
31213  uint8 *data,
31214  uint8 *mask);
31215 
31227  int unit,
31229  bcm_mac_t data,
31230  bcm_mac_t mask);
31231 
31243  int unit,
31245  bcm_mac_t *data,
31246  bcm_mac_t *mask);
31247 
31259  int unit,
31261  bcm_mac_t data,
31262  bcm_mac_t mask);
31263 
31275  int unit,
31277  bcm_mac_t *data,
31278  bcm_mac_t *mask);
31279 
31291  int unit,
31293  uint16 data,
31294  uint16 mask);
31295 
31307  int unit,
31309  uint16 *data,
31310  uint16 *mask);
31311 
31323  int unit,
31325  bcm_vlan_t data,
31326  bcm_vlan_t mask);
31327 
31339  int unit,
31341  bcm_vlan_t *data,
31342  bcm_vlan_t *mask);
31343 
31355  int unit,
31357  bcm_vlan_t data,
31358  bcm_vlan_t mask);
31359 
31371  int unit,
31373  bcm_vlan_t *data,
31374  bcm_vlan_t *mask);
31375 
31387  int unit,
31389  uint8 data,
31390  uint8 mask);
31391 
31403  int unit,
31405  uint8 *data,
31406  uint8 *mask);
31407 
31419  int unit,
31421  uint8 data,
31422  uint8 mask);
31423 
31435  int unit,
31437  uint8 *data,
31438  uint8 *mask);
31439 
31451  int unit,
31453  bcm_vlan_t data,
31454  bcm_vlan_t mask);
31455 
31467  int unit,
31469  bcm_vlan_t *data,
31470  bcm_vlan_t *mask);
31471 
31483  int unit,
31485  bcm_vlan_t data,
31486  bcm_vlan_t mask);
31487 
31499  int unit,
31501  bcm_vlan_t *data,
31502  bcm_vlan_t *mask);
31503 
31515  int unit,
31517  uint8 data,
31518  uint8 mask);
31519 
31531  int unit,
31533  uint8 *data,
31534  uint8 *mask);
31535 
31547  int unit,
31549  uint8 data,
31550  uint8 mask);
31551 
31563  int unit,
31565  uint8 *data,
31566  uint8 *mask);
31567 
31579  int unit,
31581  uint8 data,
31582  uint8 mask);
31583 
31595  int unit,
31597  uint8 *data,
31598  uint8 *mask);
31599 
31610  int unit,
31612  bcm_ip_t data,
31613  bcm_ip_t mask);
31614 
31625  int unit,
31627  bcm_ip_t data,
31628  bcm_ip_t mask);
31629 
31641  int unit,
31643  bcm_ip_t *data,
31644  bcm_ip_t *mask);
31645 
31657  int unit,
31659  bcm_ip_t *data,
31660  bcm_ip_t *mask);
31661 
31672  int unit,
31674  bcm_ip6_t data,
31675  bcm_ip6_t mask);
31676 
31687  int unit,
31689  bcm_ip6_t data,
31690  bcm_ip6_t mask);
31691 
31703  int unit,
31705  bcm_ip6_t *data,
31706  bcm_ip6_t *mask);
31707 
31719  int unit,
31721  bcm_ip6_t *data,
31722  bcm_ip6_t *mask);
31723 
31735  int unit,
31737  uint8 data,
31738  uint8 mask);
31739 
31751  int unit,
31753  uint8 *data,
31754  uint8 *mask);
31755 
31767  int unit,
31769  uint8 data,
31770  uint8 mask);
31771 
31783  int unit,
31785  uint8 *data,
31786  uint8 *mask);
31787 
31798  int unit,
31800  bcm_l4_port_t data,
31801  bcm_l4_port_t mask);
31802 
31813  int unit,
31815  bcm_l4_port_t data,
31816  bcm_l4_port_t mask);
31817 
31829  int unit,
31831  bcm_l4_port_t *data,
31832  bcm_l4_port_t *mask);
31833 
31845  int unit,
31847  bcm_l4_port_t *data,
31848  bcm_l4_port_t *mask);
31849 
31859 extern int bcm_field_qualify_TafEnable(
31860  int unit,
31862  uint8 enable);
31863 
31874 extern int bcm_field_qualify_TafGateId(
31875  int unit,
31877  uint32 data,
31878  uint32 mask);
31879 
31890  int unit,
31892  uint8 state);
31893 
31905  int unit,
31907  uint32 data,
31908  uint32 mask);
31909 
31920  int unit,
31922  uint8 *enable);
31923 
31935  int unit,
31937  uint32 *data,
31938  uint32 *mask);
31939 
31950  int unit,
31952  uint8 *state);
31953 
31965  int unit,
31967  uint32 *data,
31968  uint32 *mask);
31969 
31981  int unit,
31983  uint8 data,
31984  uint8 mask);
31985 
31997  int unit,
31999  uint8 *data,
32000  uint8 *mask);
32001 
32013  int unit,
32015  uint8 data,
32016  uint8 mask);
32017 
32029  int unit,
32031  uint8 *data,
32032  uint8 *mask);
32033 
32045 extern int bcm_field_qualify_L2PayLoad(
32046  int unit,
32048  uint32 length,
32049  const uint8 *data,
32050  const uint8 *mask);
32051 
32064  int unit,
32066  uint32 length,
32067  uint8 *data,
32068  uint8 *mask);
32069 
32081  int unit,
32083  uint8 data,
32084  uint8 mask);
32085 
32097  int unit,
32099  uint8 *data,
32100  uint8 *mask);
32101 
32110 extern int bcm_field_qualify_StpState(
32111  int unit,
32113  uint8 data);
32114 
32124  int unit,
32126  uint8 *data);
32127 
32128 #endif /* BCM_HIDE_DISPATCHABLE */
32129 
32131 #define BCM_FIELD_STG_STP_DISABLE 0x1
32132 #define BCM_FIELD_STG_STP_BLOCK 0x2
32133 #define BCM_FIELD_STG_STP_LEARN 0x4
32134 #define BCM_FIELD_STG_STP_FORWARD 0x8
32136 #ifndef BCM_HIDE_DISPATCHABLE
32137 
32149  int unit,
32151  uint8 data,
32152  uint8 mask);
32153 
32165  int unit,
32167  uint8 *data,
32168  uint8 *mask);
32169 
32181  int unit,
32183  uint8 data,
32184  uint8 mask);
32185 
32197  int unit,
32199  uint8 *data,
32200  uint8 *mask);
32201 
32213  int unit,
32215  uint8 data,
32216  uint8 mask);
32217 
32229  int unit,
32231  uint8 *data,
32232  uint8 *mask);
32233 
32244  int unit,
32247 
32258  int unit,
32261 
32273  int unit,
32275  uint8 data,
32276  uint8 mask);
32277 
32289  int unit,
32291  uint8 *data,
32292  uint8 *mask);
32293 
32305  int unit,
32307  uint8 data,
32308  uint8 mask);
32309 
32321  int unit,
32323  uint8 *data,
32324  uint8 *mask);
32325 
32337  int unit,
32339  uint8 data,
32340  uint8 mask);
32341 
32353  int unit,
32355  uint8 *data,
32356  uint8 *mask);
32357 
32369  int unit,
32371  uint8 data,
32372  uint8 mask);
32373 
32385  int unit,
32387  uint8 *data,
32388  uint8 *mask);
32389 
32401  int unit,
32403  uint8 data,
32404  uint8 mask);
32405 
32417  int unit,
32419  uint8 *data,
32420  uint8 *mask);
32421 
32433  int unit,
32435  uint8 data,
32436  uint8 mask);
32437 
32449  int unit,
32451  uint8 *data,
32452  uint8 *mask);
32453 
32465  int unit,
32467  uint8 data,
32468  uint8 mask);
32469 
32481  int unit,
32483  uint8 *data,
32484  uint8 *mask);
32485 
32497  int unit,
32499  uint8 data,
32500  uint8 mask);
32501 
32513  int unit,
32515  uint8 *data,
32516  uint8 *mask);
32517 
32529  int unit,
32531  uint8 data,
32532  uint8 mask);
32533 
32545  int unit,
32547  uint8 *data,
32548  uint8 *mask);
32549 
32561  int unit,
32563  uint8 data,
32564  uint8 mask);
32565 
32577  int unit,
32579  uint8 *data,
32580  uint8 *mask);
32581 
32582 #endif /* BCM_HIDE_DISPATCHABLE */
32583 
32598  bcm_field_CopyToCpu_config_t *CopyToCpu_config);
32599 
32600 #ifndef BCM_HIDE_DISPATCHABLE
32601 
32618  int unit,
32620  bcm_field_CopyToCpu_config_t CopyToCpu_config);
32621 
32638  int unit,
32640  bcm_field_CopyToCpu_config_t *CopyToCpu_config);
32641 
32642 #endif /* BCM_HIDE_DISPATCHABLE */
32643 
32660  bcm_field_redirect_config_t *redirect_config);
32661 
32662 #ifndef BCM_HIDE_DISPATCHABLE
32663 
32680  int unit,
32682  bcm_field_redirect_config_t redirect_config);
32683 
32700  int unit,
32702  bcm_field_redirect_config_t *redirect_config);
32703 
32715  int unit,
32717  uint8 data,
32718  uint8 mask);
32719 
32731  int unit,
32733  uint8 *data,
32734  uint8 *mask);
32735 
32747  int unit,
32749  uint32 data,
32750  uint32 mask);
32751 
32763  int unit,
32765  uint32 *data,
32766  uint32 *mask);
32767 
32779  int unit,
32781  uint8 data,
32782  uint8 mask);
32783 
32795  int unit,
32797  uint8 *data,
32798  uint8 *mask);
32799 
32811  int unit,
32813  uint8 data,
32814  uint8 mask);
32815 
32827  int unit,
32829  uint8 *data,
32830  uint8 *mask);
32831 
32843  int unit,
32845  uint8 data,
32846  uint8 mask);
32847 
32859  int unit,
32861  uint8 *data,
32862  uint8 *mask);
32863 
32875  int unit,
32877  uint8 data,
32878  uint8 mask);
32879 
32891  int unit,
32893  uint8 *data,
32894  uint8 *mask);
32895 
32906  int unit,
32909 
32920  int unit,
32922  bcm_field_oam_drop_mep_type_t *mep_type);
32923 
32934  int unit,
32937 
32948  int unit,
32950  bcm_field_oam_drop_mep_type_t *mep_type);
32951 
32962  int unit,
32965 
32976  int unit,
32978  bcm_field_oam_drop_mep_type_t *mep_type);
32979 
32990  int unit,
32993 
33004  int unit,
33006  bcm_field_oam_drop_mep_type_t *mep_type);
33007 
33019  int unit,
33021  uint16 data,
33022  uint16 mask);
33023 
33035  int unit,
33037  uint16 *data,
33038  uint16 *mask);
33039 
33050  int unit,
33052  uint16 data);
33053 
33064  int unit,
33066  uint16 *data);
33067 
33078  int unit,
33080  uint8 data);
33081 
33092  int unit,
33094  uint8 *data);
33095 
33107  int unit,
33109  int data,
33110  int mask);
33111 
33123  int unit,
33125  int *data,
33126  int *mask);
33127 
33139  int unit,
33141  uint32 data,
33142  uint32 mask);
33143 
33155  int unit,
33157  uint32 *data,
33158  uint32 *mask);
33159 
33171  int unit,
33173  uint8 data,
33174  uint8 mask);
33175 
33187  int unit,
33189  uint8 *data,
33190  uint8 *mask);
33191 
33202  int unit,
33204  uint8 data,
33205  uint8 mask);
33206 
33217  int unit,
33219  uint8 *data,
33220  uint8 *mask);
33221 
33233  int unit,
33235  uint8 data,
33236  uint8 mask);
33237 
33249  int unit,
33251  uint8 *data,
33252  uint8 *mask);
33253 
33265  int unit,
33267  uint8 data,
33268  uint8 mask);
33269 
33281  int unit,
33283  uint8 *data,
33284  uint8 *mask);
33285 
33297  int unit,
33299  uint8 data,
33300  uint8 mask);
33301 
33313  int unit,
33315  uint8 *data,
33316  uint8 *mask);
33317 
33329  int unit,
33331  uint8 data,
33332  uint8 mask);
33333 
33345  int unit,
33347  uint8 *data,
33348  uint8 *mask);
33349 
33361  int unit,
33363  bcm_mac_t data,
33364  bcm_mac_t mask);
33365 
33377  int unit,
33379  bcm_mac_t *data,
33380  bcm_mac_t *mask);
33381 
33393  int unit,
33395  bcm_mac_t data,
33396  bcm_mac_t mask);
33397 
33409  int unit,
33411  bcm_mac_t *data,
33412  bcm_mac_t *mask);
33413 
33425  int unit,
33427  uint16 data,
33428  uint16 mask);
33429 
33441  int unit,
33443  uint16 *data,
33444  uint16 *mask);
33445 
33457  int unit,
33459  uint16 data,
33460  uint16 mask);
33461 
33473  int unit,
33475  uint16 *data,
33476  uint16 *mask);
33477 
33492  int unit,
33495  bcm_vlan_action_set_t *vlan_action_set);
33496 
33510  int unit,
33513  bcm_vlan_action_set_t *vlan_action_set);
33514 
33526  int unit,
33528  uint16 data,
33529  uint16 mask);
33530 
33542  int unit,
33544  uint16 *data,
33545  uint16 *mask);
33546 
33558  int unit,
33560  bcm_vlan_t data,
33561  bcm_vlan_t mask);
33562 
33574  int unit,
33576  bcm_vlan_t *data,
33577  bcm_vlan_t *mask);
33578 
33590  int unit,
33592  bcm_vlan_t data,
33593  bcm_vlan_t mask);
33594 
33606  int unit,
33608  bcm_vlan_t *data,
33609  bcm_vlan_t *mask);
33610 
33622  int unit,
33624  uint8 data,
33625  uint8 mask);
33626 
33638  int unit,
33640  uint8 *data,
33641  uint8 *mask);
33642 
33654  int unit,
33656  uint8 data,
33657  uint8 mask);
33658 
33670  int unit,
33672  uint8 *data,
33673  uint8 *mask);
33674 
33686  int unit,
33688  bcm_ip_t data,
33689  bcm_ip_t mask);
33690 
33702  int unit,
33704  bcm_ip_t data,
33705  bcm_ip_t mask);
33706 
33718  int unit,
33720  bcm_ip_t *data,
33721  bcm_ip_t *mask);
33722 
33734  int unit,
33736  bcm_ip_t *data,
33737  bcm_ip_t *mask);
33738 
33750  int unit,
33752  bcm_ip6_t data,
33753  bcm_ip6_t mask);
33754 
33766  int unit,
33768  bcm_ip6_t data,
33769  bcm_ip6_t mask);
33770 
33782  int unit,
33784  bcm_ip6_t *data,
33785  bcm_ip6_t *mask);
33786 
33798  int unit,
33800  bcm_ip6_t *data,
33801  bcm_ip6_t *mask);
33802 
33814  int unit,
33816  uint8 data,
33817  uint8 mask);
33818 
33830  int unit,
33832  uint8 *data,
33833  uint8 *mask);
33834 
33846  int unit,
33848  bcm_l4_port_t data,
33849  bcm_l4_port_t mask);
33850 
33862  int unit,
33864  bcm_l4_port_t data,
33865  bcm_l4_port_t mask);
33866 
33878  int unit,
33880  bcm_l4_port_t *data,
33881  bcm_l4_port_t *mask);
33882 
33894  int unit,
33896  bcm_l4_port_t *data,
33897  bcm_l4_port_t *mask);
33898 
33913 extern int bcm_field_sat_macsa_add(
33914  int unit,
33915  bcm_mac_t mac,
33916  uint32 class_id);
33917 
33929 extern int bcm_field_sat_macsa_get(
33930  int unit,
33931  bcm_mac_t mac,
33932  uint32 *class_id);
33933 
33944 extern int bcm_field_sat_macsa_delete(
33945  int unit,
33946  bcm_mac_t mac);
33947 
33958  int unit);
33959 
33970 extern int bcm_field_presel_config_set(
33971  int unit,
33972  bcm_field_presel_t presel_id,
33973  bcm_field_presel_config_t *presel_config);
33974 
33985 extern int bcm_field_presel_config_get(
33986  int unit,
33987  bcm_field_presel_t presel_id,
33988  bcm_field_presel_config_t *presel_config);
33989 
34000  int unit,
34002  uint8 data,
34003  uint8 mask);
34004 
34015  int unit,
34017  uint8 *data,
34018  uint8 *mask);
34019 
34030  int unit,
34032  uint16 data,
34033  uint16 mask);
34034 
34045  int unit,
34047  uint16 *data,
34048  uint16 *mask);
34049 
34060  int unit,
34062  uint32 data,
34063  uint32 mask);
34064 
34075  int unit,
34077  uint32 *data,
34078  uint32 *mask);
34079 
34090  int unit,
34092  uint8 data,
34093  uint8 mask);
34094 
34105  int unit,
34107  uint8 *data,
34108  uint8 *mask);
34109 
34120  int unit,
34122  uint8 data,
34123  uint8 mask);
34124 
34135  int unit,
34137  uint8 *data,
34138  uint8 *mask);
34139 
34150  int unit,
34152  uint8 data,
34153  uint8 mask);
34154 
34165  int unit,
34167  uint8 *data,
34168  uint8 *mask);
34169 
34170 #endif /* BCM_HIDE_DISPATCHABLE */
34171 
34185 extern void bcm_field_presel_config_t_init(
34186  bcm_field_presel_config_t *presel_config);
34187 
34188 #ifndef BCM_HIDE_DISPATCHABLE
34189 
34203  int unit,
34205  uint32 data,
34206  uint32 mask);
34207 
34221  int unit,
34223  uint32 *data,
34224  uint32 *mask);
34225 
34237  int unit,
34239  uint32 data,
34240  uint32 mask);
34241 
34253  int unit,
34255  uint32 *data,
34256  uint32 *mask);
34257 
34258 #endif /* BCM_HIDE_DISPATCHABLE */
34259 
34269 
34283 
34292 
34302 
34311 
34317 
34319 #define BCM_FIELD_SR_ERROR_UNEXPECTED_PKT (1 << 0)
34321 #define BCM_FIELD_SR_ERROR_TAG_ERROR (1 << 1)
34322 #define BCM_FIELD_SR_ERROR_RX_ERROR (1 << 2)
34326 #define BCM_FIELD_SR_NET_ID_SOURCE_FORCE_ZERO 0
34328 #define BCM_FIELD_SR_NET_ID_SOURCE_SRC_PORT 1
34330 #define BCM_FIELD_SR_NET_ID_SOURCE_DST_PORT 2
34332 #define BCM_FIELD_SR_NET_ID_SOURCE_PACKET 3
34336 #define BCM_FIELD_SR_COPYTOCPU_ANY 0
34338 #define BCM_FIELD_SR_COPYTOCPU_NON_DUPLICATE 1
34343 #define BCM_FIELD_SR_TAG_TYPE_RESERVED 0
34344 #define BCM_FIELD_SR_TAG_TYPE_HSR 1
34345 #define BCM_FIELD_SR_TAG_TYPE_PRP 2
34346 #define BCM_FIELD_SR_TAG_TYPE_DOT1CB 3
34348 #ifndef BCM_HIDE_DISPATCHABLE
34349 
34359  int unit,
34362 
34372  int unit,
34375 
34385  int unit,
34388 
34398  int unit,
34401 
34411  int unit,
34413  uint8 data);
34414 
34424  int unit,
34426  uint8 *data);
34427 
34437  int unit,
34439  uint8 data);
34440 
34450  int unit,
34452  uint8 *data);
34453 
34464  int unit,
34467  uint8 mask);
34468 
34479  int unit,
34482  uint8 *mask);
34483 
34494  int unit,
34497  uint8 mask);
34498 
34509  int unit,
34512  uint8 *mask);
34513 
34524  int unit,
34526  uint8 net_id,
34527  uint8 mask);
34528 
34539  int unit,
34541  uint8 *net_id,
34542  uint8 *mask);
34543 
34554  int unit,
34556  uint8 net_id,
34557  uint8 mask);
34558 
34569  int unit,
34571  uint8 *net_id,
34572  uint8 *mask);
34573 
34583  int unit,
34585  uint8 lan_id);
34586 
34596  int unit,
34598  uint8 *lan_id);
34599 
34609  int unit,
34611  uint8 lan_id);
34612 
34622  int unit,
34624  uint8 *lan_id);
34625 
34634 extern int bcm_field_qualify_SRTagType(
34635  int unit,
34638 
34648  int unit,
34651 
34660 extern int bcm_field_qualify_SRLanId(
34661  int unit,
34663  int lan_id);
34664 
34674  int unit,
34676  int *lan_id);
34677 
34686 extern int bcm_field_qualify_SRNetId(
34687  int unit,
34689  int net_id);
34690 
34700  int unit,
34702  int *net_id);
34703 
34713  int unit,
34715  uint8 data);
34716 
34726  int unit,
34728  uint8 *data);
34729 
34739  int unit,
34741  uint8 lan_id);
34742 
34752  int unit,
34754  uint8 *lan_id);
34755 
34765 extern int bcm_field_qualify_SRFlowId(
34766  int unit,
34768  uint32 data,
34769  uint32 mask);
34770 
34781  int unit,
34783  uint32 *data,
34784  uint32 *mask);
34785 
34795  int unit,
34798 
34808  int unit,
34811 
34821  int unit,
34823  uint8 data);
34824 
34834  int unit,
34836  uint8 *data);
34837 
34847  int unit,
34849  uint8 data);
34850 
34860  int unit,
34862  uint8 *data);
34863 
34873  int unit,
34876 
34886  int unit,
34889 
34899 extern int bcm_field_qualify_SRError(
34900  int unit,
34902  uint32 data,
34903  uint32 mask);
34904 
34915  int unit,
34917  uint32 *data,
34918  uint32 *mask);
34919 
34930  int unit,
34932  uint8 data,
34933  uint8 mask);
34934 
34945  int unit,
34947  uint8 *data,
34948  uint8 *mask);
34949 
34960  int unit,
34962  uint8 data,
34963  uint8 mask);
34964 
34975  int unit,
34977  uint8 *data,
34978  uint8 *mask);
34979 
34989  int unit,
34991  uint8 data);
34992 
35002  int unit,
35004  uint8 *data);
35005 
35015 extern int bcm_field_qualify_TsnFlowId(
35016  int unit,
35018  uint32 data,
35019  uint32 mask);
35020 
35028  int unit,
35030  uint32 *data,
35031  uint32 *mask);
35032 
35044  int unit,
35046  uint32 data,
35047  uint32 mask);
35048 
35060  int unit,
35062  uint32 *data,
35063  uint32 *mask);
35064 
35076  int unit,
35078  uint32 data,
35079  uint32 mask);
35080 
35092  int unit,
35094  uint32 *data,
35095  uint32 *mask);
35096 
35108  int unit,
35110  uint32 data,
35111  uint32 mask);
35112 
35124  int unit,
35126  uint32 *data,
35127  uint32 *mask);
35128 
35140  int unit,
35142  uint32 data,
35143  uint32 mask);
35144 
35156  int unit,
35158  uint32 *data,
35159  uint32 *mask);
35160 
35172  int unit,
35174  uint32 data,
35175  uint32 mask);
35176 
35188  int unit,
35190  uint32 *data,
35191  uint32 *mask);
35192 
35204  int unit,
35206  uint32 data,
35207  uint32 mask);
35208 
35220  int unit,
35222  uint32 *data,
35223  uint32 *mask);
35224 
35236  int unit,
35238  uint32 data,
35239  uint32 mask);
35240 
35252  int unit,
35254  uint32 *data,
35255  uint32 *mask);
35256 
35268  int unit,
35270  uint32 data,
35271  uint32 mask);
35272 
35284  int unit,
35286  uint32 *data,
35287  uint32 *mask);
35288 
35300  int unit,
35302  uint32 data,
35303  uint32 mask);
35304 
35316  int unit,
35318  uint32 *data,
35319  uint32 *mask);
35320 
35332  int unit,
35334  uint32 data,
35335  uint32 mask);
35336 
35348  int unit,
35350  uint32 *data,
35351  uint32 *mask);
35352 
35370 extern int bcm_field_group_ports_add(
35371  int unit,
35373  bcm_pbmp_t pbmp);
35374 
35392 extern int bcm_field_group_ports_remove(
35393  int unit,
35395  bcm_pbmp_t pbmp);
35396 
35408 extern int bcm_field_group_ports_get(
35409  int unit,
35411  bcm_pbmp_t *pbmp);
35412 
35429  int unit,
35430  bcm_field_group_config_t *group_config,
35432 
35460 extern int bcm_field_class_map_set(
35461  int unit,
35465  uint32 *orig_values_array,
35466  uint32 *map_values_array);
35467 
35483 extern int bcm_field_class_map_get(
35484  int unit,
35488  uint32 *orig_values_array,
35489  uint32 *map_values_array);
35490 
35501 extern int bcm_field_qualify_PreselId(
35502  int unit,
35504  uint32 data,
35505  uint32 mask);
35506 
35518  int unit,
35520  uint32 *data,
35521  uint32 *mask);
35522 
35531 extern int bcm_field_qualify_MirrorDest(
35532  int unit,
35534  bcm_gport_t mirror_gport);
35535 
35545  int unit,
35547  bcm_gport_t *mirror_gport);
35548 
35559  int unit,
35561  uint8 data,
35562  uint8 mask);
35563 
35574  int unit,
35576  uint8 *data,
35577  uint8 *mask);
35578 
35588  int unit,
35591 
35601  int unit,
35603  bcm_field_IEEE1588Encap_t *encap);
35604 
35615  int unit,
35617  uint8 data,
35618  uint8 mask);
35619 
35630  int unit,
35632  uint8 *data,
35633  uint8 *mask);
35634 
35645  int unit,
35647  uint8 data,
35648  uint8 mask);
35649 
35660  int unit,
35662  uint8 *data,
35663  uint8 *mask);
35664 
35675  int unit,
35677  uint32 data,
35678  uint32 mask);
35679 
35690  int unit,
35692  uint32 *data,
35693  uint32 *mask);
35694 
35695 #endif /* BCM_HIDE_DISPATCHABLE */
35696 
35738 
35739 #define BCM_FIELD_SYS_HDR_TYPE_STRINGS \
35740 { \
35741  "None", \
35742  "SubPort", \
35743  "LoopbackNot", \
35744  "LoopbackAny", \
35745  "LoopbackGeneric", \
35746  "LoopbackCpuMasquerade", \
35747  "HiGigNot", \
35748  "HiGigAny", \
35749  "HiGigTypePpd0", \
35750  "HiGigTypePpd2", \
35751  "HiGigTypePpd0EhType0", \
35752  "HiGigTypePpd0EhType1", \
35753  "HiGigTypePpd0EhType2", \
35754  "HiGigTypePpd2EhType0", \
35755  "HiGigTypePpd2EhType1", \
35756  "HiGigTypePpd2EhType2", \
35757  "HiGigTypeUnknownPpd", \
35758  "HiGigTypeUnknownPpdWithEh", \
35759  "HiGigTypePpd1", \
35760  "HiGigTypePpd1WithEh", \
35761  "TxTimestamp", \
35762  "LoopbackRedirected", \
35763  "Recircle" \
35764 }
35765 
35766 #ifndef BCM_HIDE_DISPATCHABLE
35767 
35779 extern int bcm_field_qualify_SysHdrType(
35780  int unit,
35783 
35796  int unit,
35799 
35813  int unit,
35815  uint8 data,
35816  uint8 mask);
35817 
35818 #endif /* BCM_HIDE_DISPATCHABLE */
35819 
35821 #define BCM_FIELD_MPLS_ENABLE 1
35822 #define BCM_FIELD_MPLS_DISABLE 2
35825 #define BCM_FIELD_MPLS_TERM_ALLOWED (1 << 0)
35827 #define BCM_FIELD_IPV4_TERM_ALLOWED (1 << 1)
35829 #define BCM_FIELD_IPV6_TERM_ALLOWED (1 << 2)
35831 #define BCM_FIELD_IPV4_MCAST_TERM_ALLOWED (1 << 3)
35833 #define BCM_FIELD_IPV6_MCAST_TERM_ALLOWED (1 << 4)
35835 #define BCM_FIELD_ARP_RARP_TERM_ALLOWED (1 << 5)
35837 #define BCM_FIELD_L3_TNL_TERM_ALLOWED (1 << 6)
35840 #ifndef BCM_HIDE_DISPATCHABLE
35841 
35853  int unit,
35855  bcm_class_t data,
35856  bcm_class_t mask);
35857 
35871  int unit,
35873  uint8 *data,
35874  uint8 *mask);
35875 
35876 #endif /* BCM_HIDE_DISPATCHABLE */
35877 
35884 
35885 #define BCM_FIELD_NETWORK_TAG_TYPE \
35886 { \
35887  "VnTag", \
35888  "Etag" \
35889 }
35890 
35891 #ifndef BCM_HIDE_DISPATCHABLE
35892 
35903  int unit,
35906 
35917  int unit,
35920 
35934  int unit,
35936  uint8 data,
35937  uint8 mask);
35938 
35950  int unit,
35952  uint8 *data,
35953  uint8 *mask);
35954 
35955 #endif /* BCM_HIDE_DISPATCHABLE */
35956 
35969 
35970 #define BCM_FIELD_L2_PKT_TYPE \
35971 { \
35972  "Ethernet", \
35973  "Snap", \
35974  "LLC", \
35975  "SnapOrLLC", \
35976  "Any", \
35977  "HG3Base", \
35978  "HG3Ext0", \
35979  "Svtag" \
35980 }
35981 
35982 #ifndef BCM_HIDE_DISPATCHABLE
35983 
35993 extern int bcm_field_qualify_L2PktType(
35994  int unit,
35997 
36008  int unit,
36011 
36012 #endif /* BCM_HIDE_DISPATCHABLE */
36013 
36015 typedef enum bcm_field_pkt_type_e {
36167 
36168 #define BCM_FIELD_PKT_TYPE \
36169 { \
36170  "MplsNot", \
36171  "MplsAny", \
36172  "MplsOneLabel", \
36173  "MplsTwoLabel", \
36174  "MplsThreeLabel", \
36175  "MplsFourLabel", \
36176  "MplsFiveLabel", \
36177  "MplsSixLabel", \
36178  "MplsSevenLabel", \
36179  "MplsMoreThanSevenLabel", \
36180  "FCoENot", \
36181  "FCoEAny", \
36182  "FCoEVft", \
36183  "FCoEEncap", \
36184  "FCoEIfr", \
36185  "FCoEStd", \
36186  "FCoEVftStd", \
36187  "FCoEEncapStd", \
36188  "FCoEIfrStd", \
36189  "FCoEFip", \
36190  "1588", \
36191  "Arp", \
36192  "Rarp", \
36193  "UnknownEtherType", \
36194  "Mim", \
36195  "Oam", \
36196  "Cnm", \
36197  "NshOverL2", \
36198  "NshOverMplsOneLabel", \
36199  "NshOverMplsTwoLabel", \
36200  "Ip4Not", \
36201  "Ip4Any", \
36202  "Ip4Nsh", \
36203  "Ip4GpeNsh", \
36204  "Ip4Gre", \
36205  "Ip4Bfd", \
36206  "Ip4Vxlan", \
36207  "Ip4Gpe", \
36208  "Ip4GeneveNsh", \
36209  "Ip41588Udp", \
36210  "Ip4VxlanFlex", \
36211  "Ip4IPinIP", \
36212  "Ip4IPinGre", \
36213  "Ip4Nvgre", \
36214  "Ip4Geneve", \
36215  "Ip4Gue", \
36216  "Ip4Tcp", \
36217  "Ip4Udp", \
36218  "Ip4Icmp", \
36219  "Ip4Igmp", \
36220  "Ip4IpWithExtra4Bytes", \
36221  "Ip4Sctp", \
36222  "Ip4MplsInIpAny", \
36223  "Ip4MplsInIpWithOneLabel", \
36224  "Ip4MplsInIpWithTwoLabel", \
36225  "Ip4MplsInIpWithThreeLabel", \
36226  "Ip4MplsInIpWithFourLabel", \
36227  "Ip4MplsInIpWithAnyCw", \
36228  "Ip4MplsInIpWithOneLabelAndCw", \
36229  "Ip4MplsInIpWithTwoLabelAndCw", \
36230  "Ip4MplsInIpWithThreeLabelAndCw", \
36231  "Ip4MplsInIpWithFourLabelAndCw", \
36232  "Ip6Not", \
36233  "Ip6Any", \
36234  "Ip6Nsh", \
36235  "Ip6GpeNsh", \
36236  "Ip6Gre", \
36237  "Ip6Bfd", \
36238  "Ip6Vxlan", \
36239  "Ip6Gpe", \
36240  "Ip6GeneveNsh", \
36241  "Ip61588Udp", \
36242  "Ip6VxlanFlex", \
36243  "Ip6IPinIP", \
36244  "Ip6IPinGre", \
36245  "Ip6Nvgre", \
36246  "Ip6Geneve", \
36247  "Ip6Gue", \
36248  "Ip6Tcp", \
36249  "Ip6Udp", \
36250  "Ip6Icmp", \
36251  "Ip6Igmp", \
36252  "Ip6IpWithExtra4Bytes", \
36253  "Ip6Sctp", \
36254  "Ip6MplsInIpAny", \
36255  "Ip6MplsInIpWithOneLabel", \
36256  "Ip6MplsInIpWithTwoLabel", \
36257  "Ip6MplsInIpWithThreeLabel", \
36258  "Ip6MplsInIpWithFourLabel", \
36259  "Ip6MplsInIpWithAnyCw", \
36260  "Ip6MplsInIpWithOneLabelAndCw", \
36261  "Ip6MplsInIpWithTwoLabelAndCw", \
36262  "Ip6MplsInIpWithThreeLabelAndCw", \
36263  "Ip6MplsInIpWithFourLabelAndCw", \
36264  "NshOverMplsThreeLabel", \
36265  "Ipv4UdpINT", \
36266  "Ipv6UdpINT", \
36267  "UdpINT", \
36268  "Ipv4IOAM", \
36269  "Ipv6IOAM", \
36270  "IOAM", \
36271  "Ipv4TcpINT", \
36272  "Ipv6TcpINT", \
36273  "TcpINT", \
36274  "TcpIfa", \
36275  "UdpIfa", \
36276  "IpBfd", \
36277  "Ethertype", \
36278  "IpIcmp", \
36279  "IpIgmp", \
36280  "IpTcp", \
36281  "IpUdp", \
36282  "UnknownL3", \
36283  "UnknownL4", \
36284  "UnknownL5", \
36285  "IpGpe", \
36286  "IpGre", \
36287  "IpGreChksum", \
36288  "IpGreKey", \
36289  "IpGreRout", \
36290  "IpGreSeq", \
36291  "IpIfa", \
36292  "MplsAch", \
36293  "IpVxlan", \
36294  "Ipv4IOAME2E", \
36295  "Ipv6IOAME2E", \
36296  "IOAME2E", \
36297  "UdpManyInOne", \
36298  "TcpManyInOne" \
36299 }
36300 
36301 #ifndef BCM_HIDE_DISPATCHABLE
36302 
36312 extern int bcm_field_qualify_PktType(
36313  int unit,
36316 
36327  int unit,
36330 
36344  int unit,
36346  uint8 data,
36347  uint8 mask);
36348 
36360  int unit,
36362  uint8 *data,
36363  uint8 *mask);
36364 
36378  int unit,
36380  uint8 data,
36381  uint8 mask);
36382 
36394  int unit,
36396  uint8 *data,
36397  uint8 *mask);
36398 
36399 #endif /* BCM_HIDE_DISPATCHABLE */
36400 
36425 
36426 #define BCM_FIELD_IP_OPTION_HDR_TYPE \
36427 { \
36428  "AH", \
36429  "ESP", \
36430  "WESP", \
36431  "AHESP", \
36432  "AHWESP", \
36433  "Generic", \
36434  "Frag", \
36435  "GenericGeneric", \
36436  "GenericFrag", \
36437  "GenericAH", \
36438  "GenericESP", \
36439  "GenericWESP", \
36440  "FragAH", \
36441  "FragESP", \
36442  "FragWESP", \
36443  "AHExt2", \
36444  "FragExt2" \
36445 }
36446 
36447 #ifndef BCM_HIDE_DISPATCHABLE
36448 
36459  int unit,
36462 
36473  int unit,
36476 
36487  int unit,
36490 
36501  int unit,
36504 
36518  int unit,
36520  uint8 data,
36521  uint8 mask);
36522 
36536  int unit,
36538  uint8 *data,
36539  uint8 *mask);
36540 
36551  int unit,
36554 
36565  int unit,
36568 
36579  int unit,
36582 
36593  int unit,
36596 
36607  int unit,
36610 
36621  int unit,
36624 
36635  int unit,
36638 
36649  int unit,
36652 
36666  int unit,
36668  uint8 data,
36669  uint8 mask);
36670 
36682  int unit,
36684  uint8 *data,
36685  uint8 *mask);
36686 
36687 #endif /* BCM_HIDE_DISPATCHABLE */
36688 
36697 
36698 #define BCM_FIELD_HIGIG_PROXY_TUNNEL_TYPE \
36699 { \
36700  "Any", \
36701  "Vxlan", \
36702  "L2Gre", \
36703  "Mim" \
36704 }
36705 
36706 #ifndef BCM_HIDE_DISPATCHABLE
36707 
36718  int unit,
36721 
36732  int unit,
36735 
36748 extern int bcm_field_qualify_IpmcV4Pkt(
36749  int unit,
36751  uint8 data,
36752  uint8 mask);
36753 
36765  int unit,
36767  uint8 *data,
36768  uint8 *mask);
36769 
36782 extern int bcm_field_qualify_IpmcV6Pkt(
36783  int unit,
36785  uint8 data,
36786  uint8 mask);
36787 
36799  int unit,
36801  uint8 *data,
36802  uint8 *mask);
36803 
36816  int unit,
36818  uint8 data,
36819  uint8 mask);
36820 
36833  int unit,
36835  uint8 *data,
36836  uint8 *mask);
36837 
36850  int unit,
36852  uint8 data,
36853  uint8 mask);
36854 
36867  int unit,
36869  uint8 *data,
36870  uint8 *mask);
36871 
36882 extern int bcm_field_qualify_IpFragPkt(
36883  int unit,
36885  uint8 data,
36886  uint8 mask);
36887 
36899  int unit,
36901  uint8 *data,
36902  uint8 *mask);
36903 
36916  int unit,
36918  uint8 data,
36919  uint8 mask);
36920 
36933  int unit,
36935  uint8 *data,
36936  uint8 *mask);
36937 
36949 extern int bcm_field_qualify_IpInIpPkt(
36950  int unit,
36952  uint8 data,
36953  uint8 mask);
36954 
36966  int unit,
36968  uint8 *data,
36969  uint8 *mask);
36970 
36981  int unit,
36983  uint8 data,
36984  uint8 mask);
36985 
36996  int unit,
36998  uint8 *data,
36999  uint8 *mask);
37000 
37013  int unit,
37015  uint8 data,
37016  uint8 mask);
37017 
37030  int unit,
37032  uint8 *data,
37033  uint8 *mask);
37034 
37035 #endif /* BCM_HIDE_DISPATCHABLE */
37036 
37043 
37044 #define BCM_FIELD_INTERFACE_CLASS_L2_TYPE \
37045 { \
37046  "Vlan", \
37047  "Vfi" \
37048 }
37049 
37050 #ifndef BCM_HIDE_DISPATCHABLE
37051 
37062  int unit,
37065 
37076  int unit,
37079 
37094  int unit,
37096  uint8 data,
37097  uint8 mask);
37098 
37111  int unit,
37113  uint8 *data,
37114  uint8 *mask);
37115 
37131  int unit,
37133  uint8 data,
37134  uint8 mask);
37135 
37148  int unit,
37150  uint8 *data,
37151  uint8 *mask);
37152 
37167  int unit,
37169  uint8 data,
37170  uint8 mask);
37171 
37184  int unit,
37186  uint8 *data,
37187  uint8 *mask);
37188 
37189 #endif /* BCM_HIDE_DISPATCHABLE */
37190 
37197 
37198 #define BCM_FIELD_INT_PKT_TYPE \
37199 { \
37200  "ProbeReply", \
37201  "ProbeRequest" \
37202 }
37203 
37204 #ifndef BCM_HIDE_DISPATCHABLE
37205 
37216 extern int bcm_field_qualify_IntPktType(
37217  int unit,
37220 
37232  int unit,
37235 
37251  int unit,
37253  uint8 data,
37254  uint8 mask);
37255 
37268  int unit,
37270  uint8 *data,
37271  uint8 *mask);
37272 
37273 #endif /* BCM_HIDE_DISPATCHABLE */
37274 
37283 
37284 #define BCM_FIELD_TUNNELSUBTYPE_STRINGS \
37285 { \
37286  "NshOverGpeWithL3Pyld", \
37287  "NshOverL2WithL3Pyld", \
37288  "NshOverMplsWithL3Pyld", \
37289  "Unknown" \
37290 }
37291 
37292 #ifndef BCM_HIDE_DISPATCHABLE
37293 
37304  int unit,
37307 
37318  int unit,
37321 
37322 #endif /* BCM_HIDE_DISPATCHABLE */
37323 
37325 typedef enum bcm_field_pmf_pass_e {
37330 
37335 #define BCM_FIELD_MAX_NOF_CS_QUALIFIERS (32)
37336 
37342 
37346  int qual_arg;
37350 
37357  bcm_field_presel_qualify_data_t qual_data[BCM_FIELD_MAX_NOF_CS_QUALIFIERS];
37359 
37360 #ifndef BCM_HIDE_DISPATCHABLE
37361 
37373  int unit,
37375  uint32 data,
37376  uint32 mask);
37377 
37390  int unit,
37392  uint32 *data,
37393  uint32 *mask);
37394 
37406  int unit,
37408  uint32 data,
37409  uint32 mask);
37410 
37423  int unit,
37425  uint32 *data,
37426  uint32 *mask);
37427 
37442  int unit,
37445 
37460  int unit,
37463 
37464 #endif /* BCM_HIDE_DISPATCHABLE */
37465 
37474  bcm_field_presel_entry_id_t *entry_id);
37475 
37484  bcm_field_presel_entry_data_t *entry_data);
37485 
37486 #ifndef BCM_HIDE_DISPATCHABLE
37487 
37500 extern int bcm_field_presel_set(
37501  int unit,
37502  uint32 flags,
37503  bcm_field_presel_entry_id_t *entry_id,
37504  bcm_field_presel_entry_data_t *entry_data);
37505 
37518 extern int bcm_field_presel_get(
37519  int unit,
37520  uint32 flags,
37521  bcm_field_presel_entry_id_t *entry_id,
37522  bcm_field_presel_entry_data_t *entry_data);
37523 
37535 extern int bcm_field_qualify_BfdGoodPkt(
37536  int unit,
37538  uint8 data,
37539  uint8 mask);
37540 
37553  int unit,
37555  uint8 *data,
37556  uint8 *mask);
37557 
37570  int unit,
37572  uint8 data,
37573  uint8 mask);
37574 
37587  int unit,
37589  uint8 *data,
37590  uint8 *mask);
37591 
37604  int unit,
37606  uint8 data,
37607  uint8 mask);
37608 
37621  int unit,
37623  uint8 *data,
37624  uint8 *mask);
37625 
37637  int unit,
37639  bcm_class_t *data,
37640  bcm_class_t *mask);
37641 
37653  int unit,
37655  uint8 data,
37656  uint8 mask);
37657 
37669  int unit,
37671  uint8 *data,
37672  uint8 *mask);
37673 
37685  int unit,
37687  uint16 data,
37688  uint16 mask);
37689 
37701  int unit,
37703  uint16 *data,
37704  uint16 *mask);
37705 
37717  int unit,
37719  uint16 data,
37720  uint16 mask);
37721 
37733  int unit,
37735  uint16 *data,
37736  uint16 *mask);
37737 
37749  int unit,
37751  uint16 data,
37752  uint16 mask);
37753 
37765  int unit,
37767  uint16 *data,
37768  uint16 *mask);
37769 
37781  int unit,
37783  uint16 data,
37784  uint16 mask);
37785 
37797  int unit,
37799  uint16 *data,
37800  uint16 *mask);
37801 
37802 #endif /* BCM_HIDE_DISPATCHABLE */
37803 
37804 #define BCM_FIELD_NUMBER_OF_QUALS_PER_GROUP (32)
37807 #define BCM_FIELD_NUMBER_OF_ACTIONS_PER_GROUP (32)
37810 #define BCM_FIELD_NUMBER_OF_TCAM_BANKS (16)
37812 #define BCM_FIELD_NUMBER_OF_HASH_KEYS (8)
37817 typedef enum bcm_field_group_type_e {
37831 
37832 #define BCM_FIELD_GROUP_TYPE_STRINGS \
37833 { \
37834  "Tcam", \
37835  "DirectTcam", \
37836  "DirectMdb", \
37837  "DirectExtraction", \
37838  "ExactMatch", \
37839  "StateTable", \
37840  "ExternalTcam", \
37841  "Const" \
37842 }
37843 
37869 
37870 #define BCM_FIELD_TCAM_BANK_ALLOCATION_MODE_STRINGS \
37871 { \
37872  "Auto", \
37873  "Select", \
37874  "SelectWithLocation" \
37875 }
37876 
37884  int tcam_bank_ids[BCM_FIELD_NUMBER_OF_TCAM_BANKS];
37892 
37909 
37911 #define BCM_FIELD_MAX_SHORT_NAME_LEN (72)
37912 
37917 typedef struct bcm_field_group_info_s {
37926  bcm_field_qualify_t qual_types[BCM_FIELD_NUMBER_OF_QUALS_PER_GROUP];
37930  uint8 qual_is_ranged[BCM_FIELD_NUMBER_OF_QUALS_PER_GROUP];
37936  bcm_field_action_t action_types[BCM_FIELD_NUMBER_OF_ACTIONS_PER_GROUP];
37938  int action_with_valid_bit[BCM_FIELD_NUMBER_OF_ACTIONS_PER_GROUP];
37945  uint8 name[BCM_FIELD_MAX_SHORT_NAME_LEN];
37946  int *ext_acl_db;
37948 
37949 #ifndef BCM_HIDE_DISPATCHABLE
37950 
37961  int unit,
37963  uint8 data,
37964  uint8 mask);
37965 
37976  int unit,
37978  uint8 *data,
37979  uint8 *mask);
37980 
37991  int unit,
37993  uint8 data,
37994  uint8 mask);
37995 
38006  int unit,
38008  uint8 *data,
38009  uint8 *mask);
38010 
38021  int unit,
38023  uint8 data,
38024  uint8 mask);
38025 
38036  int unit,
38038  uint8 *data,
38039  uint8 *mask);
38040 
38051  int unit,
38053  uint8 data,
38054  uint8 mask);
38055 
38066  int unit,
38068  uint8 *data,
38069  uint8 *mask);
38070 
38081  int unit,
38083  uint8 data,
38084  uint8 mask);
38085 
38096  int unit,
38098  uint8 *data,
38099  uint8 *mask);
38100 
38111  int unit,
38113  uint8 data,
38114  uint8 mask);
38115 
38126  int unit,
38128  uint8 *data,
38129  uint8 *mask);
38130 
38131 #endif /* BCM_HIDE_DISPATCHABLE */
38132 
38137 #define BCM_FIELD_PKT_DST_ADDR_TYPE_UCAST_MAC (1 << 0)
38141 #define BCM_FIELD_PKT_DST_ADDR_TYPE_MCAST_MAC (1 << 1)
38145 #define BCM_FIELD_PKT_DST_ADDR_TYPE_BCAST_MAC (1 << 2)
38149 #define BCM_FIELD_PKT_DST_ADDR_TYPE_UCAST_IP (1 << 3)
38153 #define BCM_FIELD_PKT_DST_ADDR_TYPE_MCAST_IP (1 << 4)
38157 #define BCM_FIELD_PKT_DST_ADDR_TYPE_BCAST_IP (1 << 5)
38162 #ifndef BCM_HIDE_DISPATCHABLE
38163 
38176  int unit,
38178  uint32 dst_addr_type);
38179 
38193  int unit,
38195  uint32 *dst_addr_type);
38196 
38209  int unit,
38211  uint32 dst_addr_type);
38212 
38226  int unit,
38228  uint32 *dst_addr_type);
38229 
38241  int unit,
38243  uint8 data,
38244  uint8 mask);
38245 
38257  int unit,
38259  uint8 *data,
38260  uint8 *mask);
38261 
38273  int unit,
38275  uint8 data,
38276  uint8 mask);
38277 
38289  int unit,
38291  uint8 *data,
38292  uint8 *mask);
38293 
38305  int unit,
38307  uint8 data,
38308  uint8 mask);
38309 
38321  int unit,
38323  uint8 *data,
38324  uint8 *mask);
38325 
38337  int unit,
38339  uint8 data,
38340  uint8 mask);
38341 
38353  int unit,
38355  uint8 *data,
38356  uint8 *mask);
38357 
38367 extern int bcm_field_qualify_Ip4Tos(
38368  int unit,
38370  uint8 data,
38371  uint8 mask);
38372 
38383 extern int bcm_field_qualify_Ip4Tos_get(
38384  int unit,
38386  uint8 *data,
38387  uint8 *mask);
38388 
38400  int unit,
38402  uint8 data,
38403  uint8 mask);
38404 
38416  int unit,
38418  uint8 *data,
38419  uint8 *mask);
38420 
38432  int unit,
38434  uint8 data,
38435  uint8 mask);
38436 
38448  int unit,
38450  uint8 *data,
38451  uint8 *mask);
38452 
38464  int unit,
38466  uint8 data,
38467  uint8 mask);
38468 
38480  int unit,
38482  uint8 *data,
38483  uint8 *mask);
38484 
38496  int unit,
38498  uint8 data,
38499  uint8 mask);
38500 
38512  int unit,
38514  uint8 *data,
38515  uint8 *mask);
38516 
38517 #endif /* BCM_HIDE_DISPATCHABLE */
38518 
38520 #define BCM_FIELD_CONTEXT_ID_INVALID ((bcm_field_context_t) (-1))
38521 
38529 #define BCM_FIELD_CONTEXT_ID_DEFAULT (0)
38530 
38539 
38550 
38566  uint8 name[BCM_FIELD_MAX_SHORT_NAME_LEN];
38568 
38576 extern void bcm_field_context_info_t_init(
38577  bcm_field_context_info_t *context_info);
38578 
38579 #ifndef BCM_HIDE_DISPATCHABLE
38580 
38594 extern int bcm_field_context_create(
38595  int unit,
38596  uint32 flags,
38598  bcm_field_context_info_t *context_info,
38599  bcm_field_context_t *context_id);
38600 
38613 extern int bcm_field_context_info_get(
38614  int unit,
38616  bcm_field_context_t context_id,
38617  bcm_field_context_info_t *context_info);
38618 
38630 extern int bcm_field_context_destroy(
38631  int unit,
38633  bcm_field_context_t context_id);
38634 
38635 #endif /* BCM_HIDE_DISPATCHABLE */
38636 
38644 extern void bcm_field_group_info_t_init(
38645  bcm_field_group_info_t *fg_info);
38646 
38647 #ifndef BCM_HIDE_DISPATCHABLE
38648 
38661 extern int bcm_field_group_add(
38662  int unit,
38663  uint32 flags,
38664  bcm_field_group_info_t *fg_info,
38665  bcm_field_group_t *fg_id);
38666 
38678 extern int bcm_field_group_info_get(
38679  int unit,
38680  bcm_field_group_t fg_id,
38681  bcm_field_group_info_t *fg_info);
38682 
38693 extern int bcm_field_group_delete(
38694  int unit,
38695  bcm_field_group_t fg_id);
38696 
38697 #endif /* BCM_HIDE_DISPATCHABLE */
38698 
38703 #define BCM_FIELD_FLAG_WITH_ID (1 << 0)
38704 
38709 #define BCM_FIELD_FLAG_UPDATE (1 << 1)
38710 
38712 #define BCM_FIELD_FLAG_MSB_RESULT_ALIGN (1 << 2)
38713 
38715 #define BCM_FIELD_FLAG_LSB_RESULT_ALIGN (1 << 3)
38716 
38721 #define BCM_FIELD_FLAG_EXTERNAL_COUNTERS (1 << 4)
38722 
38727 #define BCM_FIELD_FLAG_32_RESULT_MSB_ALIGN (1 << 5)
38728 
38734 #define BCM_FIELD_FLAG_QUAL_PACKING (1 << 6)
38735 
38737 #define BCM_FIELD_INVALID 0xFFFF
38738 
38743 #define BCM_FIELD_ID_INVALID (-1)
38744 
38764 
38765 #define BCM_FIELD_INPUT_TYPES_STRINGS \
38766 { \
38767  "LayerFwd", \
38768  "LayerAbsolute", \
38769  "MetaData", \
38770  "LayerRecordsFwd", \
38771  "LayerRecordsAbsolute", \
38772  "External", \
38773  "Cascaded", \
38774  "Const" \
38775 }
38776 
38798 
38809  int offset;
38813 
38823  bcm_field_qualify_t qual_types[BCM_FIELD_NUMBER_OF_QUALS_PER_GROUP];
38827  bcm_field_qualify_attach_info_t qual_info[BCM_FIELD_NUMBER_OF_QUALS_PER_GROUP];
38832 
38842  bcm_field_action_t action_types[BCM_FIELD_NUMBER_OF_ACTIONS_PER_GROUP];
38846  bcm_field_action_attach_info_t action_info[BCM_FIELD_NUMBER_OF_ACTIONS_PER_GROUP];
38868 
38887 
38896  bcm_field_qualify_attach_info_t *qual_info);
38897 
38906  bcm_field_group_attach_info_t *attach_info);
38907 
38908 #ifndef BCM_HIDE_DISPATCHABLE
38909 
38925  int unit,
38926  uint32 flags,
38927  bcm_field_group_t fg_id,
38928  bcm_field_context_t context_id,
38929  bcm_field_group_attach_info_t *attach_info);
38930 
38944  int unit,
38945  bcm_field_group_t fg_id,
38946  bcm_field_context_t context_id,
38947  bcm_field_group_attach_info_t *attach_info);
38948 
38961  int unit,
38962  bcm_field_group_t fg_id,
38963  bcm_field_context_t context_id);
38964 
38965 #endif /* BCM_HIDE_DISPATCHABLE */
38966 
38968 #define BCM_FIELD_ACTION_WIDTH_IN_WORDS (4)
38969 
38971 #define BCM_FIELD_QUAL_WIDTH_IN_WORDS (5)
38972 
38977 typedef struct bcm_field_action_info_s {
38982  int size;
38988  uint8 name[BCM_FIELD_MAX_SHORT_NAME_LEN];
38990 
38996  int size;
38998  uint8 name[BCM_FIELD_MAX_SHORT_NAME_LEN];
39000 
39010  int size;
39012  int offset;
39013  uint8 name[BCM_FIELD_MAX_SHORT_NAME_LEN];
39015 
39023  uint32 value[BCM_FIELD_ACTION_WIDTH_IN_WORDS];
39025 
39030 typedef struct bcm_field_entry_qual_s {
39033  uint32 value[BCM_FIELD_QUAL_WIDTH_IN_WORDS];
39034  uint32 max_value[BCM_FIELD_QUAL_WIDTH_IN_WORDS];
39036  uint32 mask[BCM_FIELD_QUAL_WIDTH_IN_WORDS];
39039 
39044 typedef struct bcm_field_entry_info_s {
39051  bcm_field_entry_qual_t entry_qual[BCM_FIELD_NUMBER_OF_QUALS_PER_GROUP];
39056  bcm_field_entry_action_t entry_action[BCM_FIELD_NUMBER_OF_ACTIONS_PER_GROUP];
39061 
39069 extern void bcm_field_action_info_t_init(
39070  bcm_field_action_info_t *action_info);
39071 
39072 #ifndef BCM_HIDE_DISPATCHABLE
39073 
39087 extern int bcm_field_action_create(
39088  int unit,
39089  uint32 flags,
39090  bcm_field_action_info_t *action_info,
39091  bcm_field_action_t *action_id);
39092 
39103 extern int bcm_field_action_value_map(
39104  int unit,
39106  bcm_field_action_t bcm_action,
39107  uint32 bcm_value[BCM_FIELD_ACTION_WIDTH_IN_WORDS],
39108  uint32 hw_value[BCM_FIELD_ACTION_WIDTH_IN_WORDS]);
39109 
39122 extern int bcm_field_action_info_get(
39123  int unit,
39124  bcm_field_action_t action_id,
39126  bcm_field_action_info_t *action_info);
39127 
39138 extern int bcm_field_action_destroy(
39139  int unit,
39140  bcm_field_action_t action_id);
39141 
39142 #endif /* BCM_HIDE_DISPATCHABLE */
39143 
39153 
39162  bcm_field_qualifier_info_get_t *qual_info);
39163 
39164 #ifndef BCM_HIDE_DISPATCHABLE
39165 
39179 extern int bcm_field_qualifier_create(
39180  int unit,
39181  uint32 flags,
39183  bcm_field_qualify_t *qual_id);
39184 
39196  int unit,
39198  bcm_field_qualify_t bcm_qual,
39199  uint32 bcm_value[BCM_FIELD_QUAL_WIDTH_IN_WORDS],
39200  uint32 hw_value[BCM_FIELD_QUAL_WIDTH_IN_WORDS]);
39201 
39214 extern int bcm_field_qualifier_info_get(
39215  int unit,
39216  bcm_field_qualify_t qual_id,
39218  bcm_field_qualifier_info_get_t *qual_info);
39219 
39230 extern int bcm_field_qualifier_destroy(
39231  int unit,
39232  bcm_field_qualify_t qual_id);
39233 
39234 #endif /* BCM_HIDE_DISPATCHABLE */
39235 
39245 
39256  uint8 name[BCM_FIELD_MAX_SHORT_NAME_LEN];
39258 
39267  bcm_field_name_to_id_info_t *name_to_id_info);
39268 
39276 extern void bcm_field_entry_info_t_init(
39277  bcm_field_entry_info_t *entry_info);
39278 
39286 extern void bcm_field_entry_qual_t_init(
39287  bcm_field_entry_qual_t entry_qual[BCM_FIELD_NUMBER_OF_QUALS_PER_GROUP]);
39288 
39289 #ifndef BCM_HIDE_DISPATCHABLE
39290 
39304 extern int bcm_field_entry_add(
39305  int unit,
39306  uint32 flags,
39307  bcm_field_group_t fg_id,
39308  bcm_field_entry_info_t *entry_info,
39309  bcm_field_entry_t *entry_handle);
39310 
39323 extern int bcm_field_entry_info_get(
39324  int unit,
39325  bcm_field_group_t fg_id,
39326  bcm_field_entry_t entry_handle,
39327  bcm_field_entry_info_t *entry_info);
39328 
39341 extern int bcm_field_entry_delete(
39342  int unit,
39343  bcm_field_group_t fg_id,
39344  bcm_field_entry_qual_t entry_qual_info[BCM_FIELD_NUMBER_OF_QUALS_PER_GROUP],
39345  bcm_field_entry_t entry_handle);
39346 
39356 extern int bcm_field_entry_delete_all(
39357  int unit);
39358 
39359 #endif /* BCM_HIDE_DISPATCHABLE */
39360 
39373 
39374 #define BCM_FIELD_PACKET_REMOVE_LAYER_STRINGS \
39375 { \
39376  "Offset0", \
39377  "Offset1", \
39378  "ForwardingOffset0", \
39379  "ForwardingOffset1" \
39380 }
39381 
39387 #define BCM_FIELD_PACKET_STRIP(remove_layers, fixed_num_bytes) ((fixed_num_bytes<<4) + (remove_layers))
39388 
39422 
39438 
39455 
39474 
39487 
39514 
39523 
39532  bcm_field_context_hash_info_t *hash_info);
39533 
39534 #ifndef BCM_HIDE_DISPATCHABLE
39535 
39550  int unit,
39551  uint32 flags,
39553  bcm_field_context_t context_id,
39554  bcm_field_context_hash_info_t *hash_info);
39555 
39569  int unit,
39571  bcm_field_context_t context_id,
39572  bcm_field_context_hash_info_t *hash_info);
39573 
39586  int unit,
39588  bcm_field_context_t context_id);
39589 
39590 #endif /* BCM_HIDE_DISPATCHABLE */
39591 
39600  bcm_field_context_compare_info_t *compare_info);
39601 
39602 #ifndef BCM_HIDE_DISPATCHABLE
39603 
39619  int unit,
39620  uint32 flags,
39622  bcm_field_context_t context_id,
39623  uint32 pair_id,
39625 
39640  int unit,
39642  bcm_field_context_t context_id,
39643  uint32 pair_id,
39645 
39659  int unit,
39661  bcm_field_context_t context_id,
39662  uint32 pair_id);
39663 
39664 #endif /* BCM_HIDE_DISPATCHABLE */
39665 
39671 typedef enum bcm_field_app_db_e {
39687 
39698  int tcam_bank_ids[BCM_FIELD_NUMBER_OF_TCAM_BANKS];
39701 
39709  bcm_field_tcam_bank_info_t *bank_info);
39710 
39711 #ifndef BCM_HIDE_DISPATCHABLE
39712 
39726 extern int bcm_field_tcam_bank_evacuate(
39727  int unit,
39728  uint32 flags,
39729  bcm_field_tcam_bank_info_t *evac_info);
39730 
39742 extern int bcm_field_tcam_bank_add(
39743  int unit,
39744  uint32 flags,
39745  bcm_field_tcam_bank_info_t *add_info);
39746 
39747 #endif /* BCM_HIDE_DISPATCHABLE */
39748 
39754 
39764  bcm_field_action_t action_types[BCM_FIELD_NUMBER_OF_ACTIONS_PER_GROUP];
39768  int action_with_valid_bit[BCM_FIELD_NUMBER_OF_ACTIONS_PER_GROUP];
39771  uint8 name[BCM_FIELD_MAX_SHORT_NAME_LEN];
39773 
39782  bcm_field_ace_format_info_t *ace_format_info);
39783 
39784 #ifndef BCM_HIDE_DISPATCHABLE
39785 
39798 extern int bcm_field_ace_format_add(
39799  int unit,
39800  uint32 flags,
39801  bcm_field_ace_format_info_t *ace_format_info,
39802  bcm_field_ace_format_t *ace_format_id );
39803 
39816  int unit,
39817  bcm_field_ace_format_t ace_format_id,
39818  bcm_field_ace_format_info_t *ace_format_info);
39819 
39830 extern int bcm_field_ace_format_delete(
39831  int unit,
39832  bcm_field_ace_format_t ace_format_id);
39833 
39834 #endif /* BCM_HIDE_DISPATCHABLE */
39835 
39840  bcm_field_entry_action_t entry_action[BCM_FIELD_NUMBER_OF_ACTIONS_PER_GROUP];
39843 
39852  bcm_field_ace_entry_info_t *entry_info);
39853 
39854 #ifndef BCM_HIDE_DISPATCHABLE
39855 
39869 extern int bcm_field_ace_entry_add(
39870  int unit,
39871  uint32 flags,
39872  bcm_field_ace_format_t ace_format_id ,
39873  bcm_field_ace_entry_info_t *entry_info,
39874  uint32 *entry_handle);
39875 
39887 extern int bcm_field_ace_entry_info_get(
39888  int unit,
39889  uint32 entry_handle,
39890  bcm_field_ace_entry_info_t *entry_info);
39891 
39902 extern int bcm_field_ace_entry_delete(
39903  int unit,
39904  uint32 entry_handle);
39905 
39906 #endif /* BCM_HIDE_DISPATCHABLE */
39907 
39912 #define BCM_FIELD_FIRST_USER_ACTION_ID (2048)
39913 
39918 #define BCM_FIELD_FIRST_USER_QUALIFIER_ID (2048)
39919 
39921 #define BCM_FIELD_ACTION_ID_MAP(user_action_id) (BCM_FIELD_FIRST_USER_ACTION_ID + user_action_id)
39922 
39924 #define BCM_FIELD_QUALIFIER_ID_MAP(user_qualifier_id) (BCM_FIELD_FIRST_USER_QUALIFIER_ID + user_qualifier_id)
39925 
39944 
39955 
39964  bcm_field_context_param_info_t *context_params);
39965 
39966 #ifndef BCM_HIDE_DISPATCHABLE
39967 
39981 extern int bcm_field_context_param_set(
39982  int unit,
39983  uint32 flags,
39985  bcm_field_context_t context_id,
39986  bcm_field_context_param_info_t *context_params);
39987 
39988 #endif /* BCM_HIDE_DISPATCHABLE */
39989 
39992 
39997 #define BCM_FIELD_NUMBER_OF_CONDITIONS_PER_FEM (16)
39998 
40003 #define BCM_FIELD_NUMBER_OF_EXTRACTIONS_PER_FEM (4)
40004 
40009 #define BCM_FIELD_NUMBER_OF_MAPPING_BITS_PER_FEM (24)
40010 
40021 
40029 
40034  bcm_field_fem_extraction_output_bit_t output_bit[BCM_FIELD_NUMBER_OF_MAPPING_BITS_PER_FEM];
40039 
40047 
40060 
40069  bcm_field_fem_condition_t fem_condition[BCM_FIELD_NUMBER_OF_CONDITIONS_PER_FEM];
40072  bcm_field_fem_extraction_t fem_extraction[BCM_FIELD_NUMBER_OF_EXTRACTIONS_PER_FEM];
40081 
40090  bcm_field_fem_action_info_t *fem_action_info);
40091 
40092 #ifndef BCM_HIDE_DISPATCHABLE
40093 
40107 extern int bcm_field_fem_action_add(
40108  int unit,
40109  uint32 flags,
40110  bcm_field_group_t fg_id,
40111  bcm_field_action_priority_t encoded_position,
40112  bcm_field_fem_action_info_t *fem_action_info);
40113 
40127  int unit,
40128  bcm_field_group_t fg_id,
40129  bcm_field_action_priority_t encoded_position,
40130  bcm_field_fem_action_info_t *fem_action_info);
40131 
40143 extern int bcm_field_fem_action_delete(
40144  int unit,
40145  bcm_field_group_t fg_id,
40147 
40148 #endif /* BCM_HIDE_DISPATCHABLE */
40149 
40152 
40154 #define BCM_FIELD_NUMBER_OF_CONDITIONS_PER_EFES (4)
40155 
40181 
40192  bcm_field_efes_condition_conf_t efes_condition_conf[BCM_FIELD_NUMBER_OF_CONDITIONS_PER_EFES];
40198 
40206  bcm_field_efes_action_info_t *efes_action_info);
40207 
40208 #ifndef BCM_HIDE_DISPATCHABLE
40209 
40221 extern int bcm_field_efes_action_add(
40222  int unit,
40223  uint32 flags,
40224  bcm_field_group_t fg_id,
40225  bcm_field_context_t context_id,
40226  bcm_field_action_priority_t *encoded_position,
40227  bcm_field_efes_action_info_t *efes_action_info);
40228 
40240  int unit,
40241  bcm_field_group_t fg_id,
40242  bcm_field_context_t context_id,
40243  bcm_field_action_priority_t encoded_position,
40244  bcm_field_efes_action_info_t *efes_action_info);
40245 
40255 extern int bcm_field_efes_action_delete(
40256  int unit,
40257  bcm_field_group_t fg_id,
40258  bcm_field_context_t context_id,
40260 
40261 #endif /* BCM_HIDE_DISPATCHABLE */
40262 
40267 #define BCM_FIELD_ACTION_POSITION_MASK (0xFFFF)
40268 
40273 #define BCM_FIELD_ACTION_PRIORITY_MASK (0xFFFF)
40274 
40276 #define BCM_FIELD_ACTION_ARRAY_MASK (0xF)
40277 
40279 #define BCM_FIELD_ACTION_ARRAY_OFFSET (16)
40280 
40282 #define BCM_FIELD_ACTION_VALID_OFFSET (31)
40283 
40288 #define BCM_FIELD_ACTION_DONT_CARE_OFFSET (30)
40289 
40294 #define BCM_FIELD_ACTION_DONT_CARE ((1U << BCM_FIELD_ACTION_DONT_CARE_OFFSET) | (1U << BCM_FIELD_ACTION_VALID_OFFSET))
40295 
40300 #define BCM_FIELD_ACTION_INVALIDATE (1 << (BCM_FIELD_ACTION_VALID_OFFSET - 1))
40301 
40306 #define BCM_FIELD_ACTION_POSITION_PRIORITY_FLAG_OFFSET (20)
40307 
40308 #define BCM_FIELD_ACTION_POSITION(_array_id_, _position_) \
40309  (((((bcm_field_action_priority_t) (_position_)) & BCM_FIELD_ACTION_POSITION_MASK) | \
40310  ((((bcm_field_action_priority_t) (_array_id_)) & BCM_FIELD_ACTION_ARRAY_MASK) \
40311  << BCM_FIELD_ACTION_ARRAY_OFFSET) | \
40312  (1 << BCM_FIELD_ACTION_POSITION_PRIORITY_FLAG_OFFSET) | \
40313  ((0 << BCM_FIELD_ACTION_DONT_CARE_OFFSET) | \
40314  (1U << BCM_FIELD_ACTION_VALID_OFFSET))))
40315 
40316 #define BCM_FIELD_ACTION_PRIORITY(_array_id_, _priority_) \
40317  (((((bcm_field_action_priority_t) (_priority_)) & BCM_FIELD_ACTION_PRIORITY_MASK) | \
40318  (((bcm_field_action_priority_t) (_array_id_)) << BCM_FIELD_ACTION_ARRAY_OFFSET) | \
40319  (0 << BCM_FIELD_ACTION_POSITION_PRIORITY_FLAG_OFFSET) | \
40320  ((0 << BCM_FIELD_ACTION_DONT_CARE_OFFSET) | \
40321  (1U << BCM_FIELD_ACTION_VALID_OFFSET))))
40322 
40341 
40342 #define BCM_FIELD_SYSTEM_HEADER_PROFILE_STRINGS \
40343 { \
40344  "None", \
40345  "Ftmh", \
40346  "FtmhPph", \
40347  "FtmhTsh", \
40348  "FtmhTshPph", \
40349  "FtmhTshPphUdh", \
40350  "FtmhUdh" \
40351 }
40352 
40373 
40374 #define BCM_FIELD_RANGE_TYPE_STR \
40375 { \
40376  "L4SrcPort", \
40377  "L4DstPort", \
40378  "OutVport", \
40379  "PacketHeaderSize", \
40380  "L4OpsPacketHeaderSize", \
40381  "InTTL", \
40382  "UserDefined1Low", \
40383  "UserDefined1High", \
40384  "UserDefined2Low", \
40385  "UserDefined2High" \
40386 }
40387 
40392 typedef struct bcm_field_range_info_s {
40397 
40398 #ifndef BCM_HIDE_DISPATCHABLE
40399 
40413 extern int bcm_field_range_set(
40414  int unit,
40415  uint32 flags,
40417  bcm_field_range_t range_id,
40418  bcm_field_range_info_t *range_info);
40419 
40432 extern int bcm_field_range_info_get(
40433  int unit,
40435  bcm_field_range_t *range_id,
40436  bcm_field_range_info_t *range_info);
40437 
40452  int unit,
40453  uint32 flags,
40454  bcm_field_group_t fg_id,
40456  int *offset);
40457 
40472  int unit,
40473  uint32 flags,
40474  bcm_field_group_t fg_id,
40476  int *offset);
40477 
40478 #endif /* BCM_HIDE_DISPATCHABLE */
40479 
40520 
40521 #define BCM_FIELD_LAYER_TYPE_STRINGS \
40522 { \
40523  "Eth", \
40524  "Ip4", \
40525  "Ip6", \
40526  "Mpls", \
40527  "MplsUa", \
40528  "Arp", \
40529  "Fcoe", \
40530  "Tcp", \
40531  "Udp", \
40532  "BfdSingleHop", \
40533  "BfdMultiHop", \
40534  "PtpEvent", \
40535  "PtpGeneral", \
40536  "Y1731", \
40537  "Icmp", \
40538  "BierTi", \
40539  "BierMpls", \
40540  "Rch", \
40541  "Pppoe", \
40542  "Srv6Endpoint", \
40543  "Srv6Beyond", \
40544  "Igmp", \
40545  "IpAny", \
40546  "Gre", \
40547  "Lt2pv3", \
40548  "VxlanGpe", \
40549  "Vxlan", \
40550  "Geneve", \
40551  "Ipt", \
40552  "Tm", \
40553  "Unknown", \
40554  "TmLegacy", \
40555  "Sctp", \
40556  "ForwardingMPLS", \
40557  "Gtp" \
40558 }
40559 
40594 
40595 #define BCM_FIELD_FORWARD_CONTEXT_STRINGS \
40596 { \
40597  "Eth", \
40598  "MirrorOrSs", \
40599  "IPv4UcR0", \
40600  "IPv4McR0", \
40601  "IPv6UcR0", \
40602  "IPv6McR0", \
40603  "BierMpls", \
40604  "BierTi", \
40605  "IngressTrapLegacy", \
40606  "CpuPort", \
40607  "RchEnc", \
40608  "RchPtchEnc", \
40609  "StackingPort", \
40610  "FcoeFcf", \
40611  "FcoeFcfVft", \
40612  "Srv6Endpoint", \
40613  "Srv6EndpointPsp", \
40614  "Srv6TunnelTerm", \
40615  "Tm", \
40616  "RawProcessing", \
40617  "Tdm", \
40618  "MplsInjectedFromOamp", \
40619  "ErppTrap", \
40620  "DoNotEdit", \
40621  "Mpls", \
40622  "Ipv4UcR1", \
40623  "Ipv4McR1", \
40624  "Ipv6UcR1", \
40625  "Ipv6McR1" \
40626 }
40627 
40629 #define BCM_FILED_STAT_IS_METER_SHIFT (0)
40630 
40632 #define BCM_FILED_STAT_IS_LM_SHIFT (1)
40633 
40635 #define BCM_FILED_STAT_TYPE_SHIFT (2)
40636 
40638 #define BCM_FILED_STAT_VALID_SHIFT (4)
40639 
40644 #define BCM_FIELD_IFP_ID_BASE (0x00000000)
40645 
40650 #define BCM_FIELD_EFP_ID_BASE (0x01000000)
40651 
40656 #define BCM_FIELD_VFP_ID_BASE (0x02000000)
40657 
40662 #define BCM_FIELD_EM_ID_BASE (0x03000000)
40663 
40668 #define BCM_FIELD_FT_ID_BASE (0x04000000)
40669 
40671 #define BCM_FIELD_ID_MASK (0x00FFFFFF)
40672 
40680 
40686 
40687 #ifndef BCM_HIDE_DISPATCHABLE
40688 
40714  int unit,
40717  bcm_field_action_params_t *params,
40718  bcm_field_action_match_config_t *match_config);
40719 
40739  int unit,
40742  bcm_field_action_params_t *params,
40743  bcm_field_action_match_config_t *match_config);
40744 
40756  int unit,
40758  uint8 data,
40759  uint8 mask);
40760 
40772  int unit,
40774  uint8 *data,
40775  uint8 *mask);
40776 
40788  int unit,
40790  int data,
40791  int mask);
40792 
40804  int unit,
40806  int *data,
40807  int *mask);
40808 
40820  int unit,
40822  int data,
40823  int mask);
40824 
40836  int unit,
40838  int *data,
40839  int *mask);
40840 
40852  int unit,
40854  uint8 data,
40855  uint8 mask);
40856 
40868  int unit,
40870  uint8 *data,
40871  uint8 *mask);
40872 
40884  int unit,
40886  uint8 data,
40887  uint8 mask);
40888 
40900  int unit,
40902  uint8 *data,
40903  uint8 *mask);
40904 
40916  int unit,
40918  uint8 data,
40919  uint8 mask);
40920 
40932  int unit,
40934  uint8 *data,
40935  uint8 *mask);
40936 
40948  int unit,
40950  uint8 data,
40951  uint8 mask);
40952 
40964  int unit,
40966  uint8 *data,
40967  uint8 *mask);
40968 
40980  int unit,
40982  uint8 data,
40983  uint8 mask);
40984 
40996  int unit,
40998  uint8 *data,
40999  uint8 *mask);
41000 
41012  int unit,
41014  uint8 data,
41015  uint8 mask);
41016 
41028  int unit,
41030  uint8 *data,
41031  uint8 *mask);
41032 
41044  int unit,
41046  uint8 data,
41047  uint8 mask);
41048 
41060  int unit,
41062  uint8 *data,
41063  uint8 *mask);
41064 
41065 #endif /* BCM_HIDE_DISPATCHABLE */
41066 
41077 extern void bcm_field_range_info_t_init(
41078  bcm_field_range_info_t *range_info);
41079 
41080 #ifndef BCM_HIDE_DISPATCHABLE
41081 
41092  int unit,
41094  uint8 data,
41095  uint8 mask);
41096 
41107  int unit,
41109  uint8 *data,
41110  uint8 *mask);
41111 
41122  int unit,
41124  uint32 data,
41125  uint32 mask);
41126 
41137  int unit,
41139  uint32 *data,
41140  uint32 *mask);
41141 
41152  int unit,
41154  uint32 data,
41155  uint32 mask);
41156 
41167  int unit,
41169  uint32 *data,
41170  uint32 *mask);
41171 
41172 #endif /* BCM_HIDE_DISPATCHABLE */
41173 
41175 #define BCM_FIELD_DOSATTACK_MACSA_DA_SAME (1 << 0)
41178 #define BCM_FIELD_DOSATTACK_IPFRAG_OFFSET (1 << 1)
41182 #define BCM_FIELD_DOSATTACK_V6_TYPE0_ROUTING_HDR (1 << 2)
41186 #define BCM_FIELD_DOSATTACK_V6_NON_LAST_FRAG_LT_1280 (1 << 3)
41190 #define BCM_FIELD_DOSATTACK_FIRST_TCPIP_FRAG_SMALL (1 << 4)
41195 #define BCM_FIELD_DOSATTACK_TCP_OFFSET (1 << 5)
41199 #define BCM_FIELD_DOSATTACK_SYN_FRAG (1 << 6)
41205 #define BCM_FIELD_DOSATTACK_FLAGZERO_SEQZERO (1 << 7)
41209 #define BCM_FIELD_DOSATTACK_TCPFLAGS_FUP (1 << 8)
41214 #define BCM_FIELD_DOSATTACK_TCPFLAGS_SF (1 << 9)
41217 #define BCM_FIELD_DOSATTACK_TCPPORTS_EQUAL (1 << 10)
41221 #define BCM_FIELD_DOSATTACK_UDPPORTS_EQUAL (1 << 11)
41225 #define BCM_FIELD_DOSATTACK_ICMP (1 << 12)
41230 #define BCM_FIELD_DOSATTACK_ICMPFRAGMENTS (1 << 13)
41233 #define BCM_FIELD_DOSATTACK_TCPFLAGS_SR (1 << 14)
41236 #define BCM_FIELD_DOSATTACK_TCPFLAGS_SYN_FIRSTFRAG (1 << 15)
41240 #define BCM_FIELD_DOSATTACK_TCPFLAGS_FIN_NOACK (1 << 16)
41243 #define BCM_FIELD_DOSATTACK_TCPFLAGS_RST_NOACK (1 << 17)
41246 #define BCM_FIELD_DOSATTACK_TCPFLAGS_NOSFRA (1 << 18)
41250 #define BCM_FIELD_DOSATTACK_TCP_DSTPORT_ZERO (1 << 19)
41254 #define BCM_FIELD_DOSATTACK_TCP_SRCPORT_ZERO (1 << 20)
41257 #define BCM_FIELD_DOSATTACK_TCP_DST_IP_BCAST (1 << 21)
41261 #define BCM_FIELD_DOSATTACK_TCPFLAGS_ZERO (1 << 22)
41264 #define BCM_FIELD_DOSATTACK_TCPFLAGS_RESVD_NONZERO (1 << 23)
41267 #define BCM_FIELD_DOSATTACK_TCPFLAGS_ACK (1 << 24)
41271 #define BCM_FIELD_DOSATTACK_TCPFLAGS_URG_NOURGPTR (1 << 25)
41275 #define BCM_FIELD_DOSATTACK_TCPFLAGS_NOURG_URGPTR (1 << 26)
41279 #define BCM_FIELD_DOSATTACK_TCPFLAGS_SYNOPTION (1 << 27)
41284 #ifndef BCM_HIDE_DISPATCHABLE
41285 
41297  int unit,
41299  uint8 data,
41300  uint8 mask);
41301 
41313  int unit,
41315  uint8 *data,
41316  uint8 *mask);
41317 
41334  int unit,
41336  uint32 data,
41337  uint32 mask);
41338 
41356  int unit,
41358  uint32 *data,
41359  uint32 *mask);
41360 
41377  int unit,
41379  uint32 data,
41380  uint32 mask);
41381 
41399  int unit,
41401  uint32 *data,
41402  uint32 *mask);
41403 
41404 #endif /* BCM_HIDE_DISPATCHABLE */
41405 
41407 #define BCM_FIELD_DLB_ECMP_MON_DISABLE (1 << 0)
41409 #define BCM_FIELD_DLB_ECMP_MON_ENABLE (1 << 1)
41413 #define BCM_FIELD_DLB_TRUNK_MON_DISABLE (1 << 0)
41415 #define BCM_FIELD_DLB_TRUNK_MON_ENABLE (1 << 1)
41418 #ifndef BCM_HIDE_DISPATCHABLE
41419 
41429 extern int bcm_field_qualify_Container(
41430  int unit,
41432  uint64 data,
41433  uint64 mask);
41434 
41445  int unit,
41447  uint64 *data,
41448  uint64 *mask);
41449 
41461  int unit,
41463  int data,
41464  int mask);
41465 
41477  int unit,
41479  int *data,
41480  int *mask);
41481 
41482 #endif /* BCM_HIDE_DISPATCHABLE */
41483 
41492 
41493 #define BCM_FIELD_PKT_FLOW_TYPE \
41494 { \
41495  "TunnelNone", \
41496  "TunnelL2", \
41497  "TunnelL3" \
41498 }
41499 
41500 #ifndef BCM_HIDE_DISPATCHABLE
41501 
41529  int unit,
41532 
41543  int unit,
41546 
41558  int unit,
41560  uint16 data,
41561  uint16 mask);
41562 
41574  int unit,
41576  uint16 *data,
41577  uint16 *mask);
41578 
41590  int unit,
41592  uint16 data,
41593  uint16 mask);
41594 
41606  int unit,
41608  uint16 *data,
41609  uint16 *mask);
41610 
41621 extern int bcm_field_qualify_Ip4Length(
41622  int unit,
41624  uint16 data,
41625  uint16 mask);
41626 
41638  int unit,
41640  uint16 *data,
41641  uint16 *mask);
41642 
41653 extern int bcm_field_qualify_Ip6Length(
41654  int unit,
41656  uint16 data,
41657  uint16 mask);
41658 
41670  int unit,
41672  uint16 *data,
41673  uint16 *mask);
41674 
41686  int unit,
41688  uint16 data,
41689  uint16 mask);
41690 
41702  int unit,
41704  uint16 *data,
41705  uint16 *mask);
41706 
41718  int unit,
41720  uint16 data,
41721  uint16 mask);
41722 
41734  int unit,
41736  uint16 *data,
41737  uint16 *mask);
41738 
41749 extern int bcm_field_qualify_GbpPresent(
41750  int unit,
41752  uint8 data,
41753  uint8 mask);
41754 
41766  int unit,
41768  uint8 *data,
41769  uint8 *mask);
41770 
41782  int unit,
41784  uint8 data,
41785  uint8 mask);
41786 
41798  int unit,
41800  uint8 *data,
41801  uint8 *mask);
41802 
41813 extern int bcm_field_qualify_GbpSrcId(
41814  int unit,
41816  uint16 data,
41817  uint16 mask);
41818 
41830  int unit,
41832  uint16 *data,
41833  uint16 *mask);
41834 
41845 extern int bcm_field_qualify_GbpDstId(
41846  int unit,
41848  uint16 data,
41849  uint16 mask);
41850 
41862  int unit,
41864  uint16 *data,
41865  uint16 *mask);
41866 
41877  int unit,
41879  uint16 data,
41880  uint16 mask);
41881 
41893  int unit,
41895  uint16 *data,
41896  uint16 *mask);
41897 
41909  int unit,
41911  uint8 data,
41912  uint8 mask);
41913 
41925  int unit,
41927  uint8 *data,
41928  uint8 *mask);
41929 
41952  int unit,
41954  bcm_flowtracker_group_t flow_group_id,
41955  uint32 num_checks,
41956  bcm_field_flowtrackercheck_t *list_of_check_ids);
41957 
41971  int unit,
41973  bcm_flowtracker_group_t flow_group_id,
41974  uint32 num_checks,
41975  bcm_field_flowtrackercheck_t *list_of_check_ids,
41976  uint32 *actual_num_checks);
41977 
41989  int unit,
41991  uint8 data,
41992  uint8 mask);
41993 
42005  int unit,
42007  uint8 *data,
42008  uint8 *mask);
42009 
42027  int unit,
42029  bcm_field_cos_map_select_t cos_map_select);
42030 
42041  int unit,
42043  bcm_field_cos_map_select_t *cos_map_select);
42044 
42057  int unit,
42059  uint16 data,
42060  uint16 mask);
42061 
42074  int unit,
42076  uint16 *data,
42077  uint16 *mask);
42078 
42091  int unit,
42093  uint16 data,
42094  uint16 mask);
42095 
42108  int unit,
42110  uint16 *data,
42111  uint16 *mask);
42112 
42125  int unit,
42127  uint16 data,
42128  uint16 mask);
42129 
42142  int unit,
42144  uint16 *data,
42145  uint16 *mask);
42146 
42159  int unit,
42161  uint16 data,
42162  uint16 mask);
42163 
42176  int unit,
42178  uint16 *data,
42179  uint16 *mask);
42180 
42192  int unit,
42194  bcm_vlan_t data,
42195  bcm_vlan_t mask);
42196 
42208  int unit,
42210  bcm_vlan_t *data,
42211  bcm_vlan_t *mask);
42212 
42213 #endif /* BCM_HIDE_DISPATCHABLE */
42214 
42220 
42270 
42293 
42294 #ifndef BCM_HIDE_DISPATCHABLE
42295 
42306  int unit,
42308  bcm_field_loopback_subtype_t lb_subtype);
42309 
42320  int unit,
42322  bcm_field_loopback_subtype_t *lb_subtype);
42323 
42324 #endif /* BCM_HIDE_DISPATCHABLE */
42325 
42327 #define BCM_FIELD_L3INGRESS_STRENGTH_HIGH (1 << 0)
42331 #define BCM_FIELD_L3INGRESS_STRENGTH_LOW (1 << 1)
42342 typedef enum bcm_field_macsec_encrypt_decrypt_pkt_e {
42349 
42368 
42369 #define BCM_FIELD_COMPARE_OPERAND_STRINGS \
42370 { \
42371  "Equal", \
42372  "NotEqual", \
42373  "FirstKeySmaller", \
42374  "FirstKeyNotSmaller", \
42375  "FirstKeyBigger", \
42376  "FirstKeyNotBigger" \
42377 }
42378 
42379 #ifndef BCM_HIDE_DISPATCHABLE
42380 
42391  int unit,
42392  int pair_id,
42393  bcm_field_compare_operand_t compare_operand,
42394  int *offset);
42395 
42396 #endif /* BCM_HIDE_DISPATCHABLE */
42397 
42402 #define BCM_FIELD_ENTRY_HIT_FLUSH_ALL (1 << 1)
42403 
42404 #ifndef BCM_HIDE_DISPATCHABLE
42405 
42415 extern int bcm_field_entry_hit_get(
42416  int unit,
42417  uint32 flags,
42418  bcm_field_entry_t entry_handle,
42419  uint8 *entry_hit_core_bmp);
42420 
42429 extern int bcm_field_entry_hit_flush(
42430  int unit,
42431  uint32 flags,
42432  bcm_field_entry_t entry_handle);
42433 
42434 #endif /* BCM_HIDE_DISPATCHABLE */
42435 
42457 
42458 #define BCM_FIELD_ACE_CONTEXT_STRINGS \
42459 { \
42460  "Null", \
42461  "Reflector", \
42462  "ForwardingCodeOverride", \
42463  "IFATrap", \
42464  "AlternateMarking", \
42465  "TmToCOE", \
42466  "MplsTransitCCMSignal", \
42467  "AlternateMarkingIntermediate" \
42468 }
42469 
42470 #ifndef BCM_HIDE_DISPATCHABLE
42471 
42483  int unit,
42485  uint8 data,
42486  uint8 mask);
42487 
42499  int unit,
42501  uint8 *data,
42502  uint8 *mask);
42503 
42513  int unit,
42516 
42526  int unit,
42529 
42540  int unit,
42542  uint8 data,
42543  uint8 mask);
42544 
42555  int unit,
42557  uint8 *data,
42558  uint8 *mask);
42559 
42570  int unit,
42572  uint8 data,
42573  uint8 mask);
42574 
42585  int unit,
42587  uint8 *data,
42588  uint8 *mask);
42589 
42600  int unit,
42602  bcm_if_t if_id);
42603 
42614  int unit,
42616  bcm_if_t *if_id);
42617 
42631  int unit,
42633  uint32 data,
42634  uint32 mask);
42635 
42649  int unit,
42651  uint32 *data,
42652  uint32 *mask);
42653 
42665  int unit,
42667  uint16 data,
42668  uint16 mask);
42669 
42681  int unit,
42683  uint16 *data,
42684  uint16 *mask);
42685 
42696  int unit,
42698  uint32 data,
42699  uint32 mask);
42700 
42711  int unit,
42713  uint32 *data,
42714  uint32 *mask);
42715 
42726  int unit,
42728  uint32 data,
42729  uint32 mask);
42730 
42741  int unit,
42743  uint32 *data,
42744  uint32 *mask);
42745 
42756  int unit,
42758  uint32 data,
42759  uint32 mask);
42760 
42771  int unit,
42773  uint32 *data,
42774  uint32 *mask);
42775 
42785  int unit,
42788 
42798  int unit,
42801 
42812  int unit,
42815 
42826  int unit,
42829 
42840  int unit,
42842  bcm_port_t data,
42843  bcm_port_t mask);
42844 
42855  int unit,
42857  bcm_port_t *data,
42858  bcm_port_t *mask);
42859 
42870  int unit,
42872  uint32 data,
42873  uint32 mask);
42874 
42885  int unit,
42887  uint32 *data,
42888  uint32 *mask);
42889 
42903  int unit,
42905  uint8 data,
42906  uint8 mask);
42907 
42921  int unit,
42923  uint8 *data,
42924  uint8 *mask);
42925 
42939  int unit,
42941  uint8 data,
42942  uint8 mask);
42943 
42957  int unit,
42959  uint8 *data,
42960  uint8 *mask);
42961 
42979  int unit,
42981  uint8 data,
42982  uint8 mask);
42983 
42997  int unit,
42999  uint8 *data,
43000  uint8 *mask);
43001 
43011 extern int bcm_field_qualify_IgmpType(
43012  int unit,
43014  uint16 data,
43015  uint16 mask);
43016 
43028  int unit,
43030  uint8 *data,
43031  uint8 *mask);
43032 
43043  int unit,
43045  uint32 intf_id,
43046  uint32 mask);
43047 
43059  int unit,
43061  uint32 *data,
43062  uint32 *mask);
43063 
43073 extern int bcm_field_qualify_L3SrcHit(
43074  int unit,
43076  uint8 data,
43077  uint8 mask);
43078 
43090  int unit,
43092  uint8 *data,
43093  uint8 *mask);
43094 
43104 extern int bcm_field_qualify_L3DestHit(
43105  int unit,
43107  uint8 data,
43108  uint8 mask);
43109 
43121  int unit,
43123  uint8 *data,
43124  uint8 *mask);
43125 
43135 extern int bcm_field_qualify_L2MacInfo(
43136  int unit,
43138  uint32 data,
43139  uint32 mask);
43140 
43151  int unit,
43153  uint32 *data,
43154  uint32 *mask);
43155 
43165 extern int bcm_field_qualify_L4Info(
43166  int unit,
43168  uint32 data,
43169  uint32 mask);
43170 
43180 extern int bcm_field_qualify_L4Info_get(
43181  int unit,
43183  uint32 *data,
43184  uint32 *mask);
43185 
43196  int unit,
43198  uint8 data,
43199  uint8 mask);
43200 
43211  int unit,
43213  uint8 *data,
43214  uint8 *mask);
43215 
43226  int unit,
43228  uint32 data,
43229  uint32 mask);
43230 
43242  int unit,
43244  uint32 *data,
43245  uint32 *mask);
43246 
43257  int unit,
43259  uint16 data,
43260  uint16 mask);
43261 
43272  int unit,
43274  uint16 *data,
43275  uint16 *mask);
43276 
43287  int unit,
43289  uint16 data,
43290  uint16 mask);
43291 
43292 
43294  int unit,
43296  uint16 *data,
43297  uint16 *mask);
43298 
43309  int unit,
43311  uint8 data,
43312  uint8 mask);
43313 
43325  int unit,
43327  uint8 *data,
43328  uint8 *mask);
43329 
43340  int unit,
43342  uint8 data,
43343  uint8 mask);
43344 
43356  int unit,
43358  uint8 *data,
43359  uint8 *mask);
43360 
43371  int unit,
43373  uint8 data,
43374  uint8 mask);
43375 
43387  int unit,
43389  uint8 *data,
43390  uint8 *mask);
43391 
43402  int unit,
43404  uint32 data,
43405  uint32 mask);
43406 
43418  int unit,
43420  uint32 *data,
43421  uint32 *mask);
43422 
43433  int unit,
43435  uint8 data,
43436  uint8 mask);
43437 
43449  int unit,
43451  uint8 *data,
43452  uint8 *mask);
43453 
43464  int unit,
43466  uint8 data,
43467  uint8 mask);
43468 
43480  int unit,
43482  uint8 *data,
43483  uint8 *mask);
43484 
43495  int unit,
43497  uint8 data,
43498  uint8 mask);
43499 
43511  int unit,
43513  uint8 *data,
43514  uint8 *mask);
43515 
43526  int unit,
43528  uint8 data,
43529  uint8 mask);
43530 
43542  int unit,
43544  uint8 *data,
43545  uint8 *mask);
43546 
43557  int unit,
43559  uint32 data,
43560  uint32 mask);
43561 
43573  int unit,
43575  uint32 *data,
43576  uint32 *mask);
43577 
43588  int unit,
43590  uint32 data,
43591  uint32 mask);
43592 
43604  int unit,
43606  uint32 *data,
43607  uint32 *mask);
43608 
43619  int unit,
43621  uint32 data,
43622  uint32 mask);
43623 
43635  int unit,
43637  uint32 *data,
43638  uint32 *mask);
43639 
43650  int unit,
43652  uint32 data,
43653  uint32 mask);
43654 
43666  int unit,
43668  uint32 *data,
43669  uint32 *mask);
43670 
43681  int unit,
43683  uint32 data,
43684  uint32 mask);
43685 
43697  int unit,
43699  uint32 *data,
43700  uint32 *mask);
43701 
43712  int unit,
43714  uint16 data,
43715  uint16 mask);
43716 
43728  int unit,
43730  uint16 *data,
43731  uint16 *mask);
43732 
43743  int unit,
43745  bcm_ip_t data,
43746  bcm_ip_t mask);
43747 
43759  int unit,
43761  bcm_ip_t *data,
43762  bcm_ip_t *mask);
43763 
43774  int unit,
43776  bcm_ip6_t data,
43777  bcm_ip6_t mask);
43778 
43790  int unit,
43792  bcm_ip6_t *data,
43793  bcm_ip6_t *mask);
43794 
43805  int unit,
43807  bcm_ip_t data,
43808  bcm_ip_t mask);
43809 
43821  int unit,
43823  bcm_ip_t *data,
43824  bcm_ip_t *mask);
43825 
43836  int unit,
43838  bcm_ip6_t data,
43839  bcm_ip6_t mask);
43840 
43852  int unit,
43854  bcm_ip6_t *data,
43855  bcm_ip6_t *mask);
43856 
43867  int unit,
43869  uint8 data,
43870  uint8 mask);
43871 
43883  int unit,
43885  uint8 *data,
43886  uint8 *mask);
43887 
43898  int unit,
43900  uint16 data,
43901  uint16 mask);
43902 
43914  int unit,
43916  uint16 *data,
43917  uint16 *mask);
43918 
43929  int unit,
43931  uint16 data,
43932  uint16 mask);
43933 
43945  int unit,
43947  uint16 *data,
43948  uint16 *mask);
43949 
43960  int unit,
43962  uint32 data,
43963  uint32 mask);
43964 
43976  int unit,
43978  uint32 *data,
43979  uint32 *mask);
43980 
43991  int unit,
43993  uint32 data,
43994  uint32 mask);
43995 
44007  int unit,
44009  uint32 *data,
44010  uint32 *mask);
44011 
44022  int unit,
44024  uint32 data,
44025  uint32 mask);
44026 
44038  int unit,
44040  uint32 *data,
44041  uint32 *mask);
44042 
44053  int unit,
44055  uint32 data,
44056  uint32 mask);
44057 
44069  int unit,
44071  uint32 *data,
44072  uint32 *mask);
44073 
44084  int unit,
44086  uint32 data,
44087  uint32 mask);
44088 
44100  int unit,
44102  uint32 *data,
44103  uint32 *mask);
44104 
44115  int unit,
44117  uint32 data,
44118  uint32 mask);
44119 
44131  int unit,
44133  uint32 *data,
44134  uint32 *mask);
44135 
44146  int unit,
44148  uint8 data,
44149  uint8 mask);
44150 
44162  int unit,
44164  uint8 *data,
44165  uint8 *mask);
44166 
44177  int unit,
44179  uint32 data,
44180  uint32 mask);
44181 
44193  int unit,
44195  uint32 *data,
44196  uint32 *mask);
44197 
44208  int unit,
44210  uint32 data,
44211  uint32 mask);
44212 
44224  int unit,
44226  uint32 *data,
44227  uint32 *mask);
44228 
44239  int unit,
44241  uint8 data,
44242  uint8 mask);
44243 
44255  int unit,
44257  uint8 *data,
44258  uint8 *mask);
44259 
44269 extern int bcm_field_qualify_MplsLabel4(
44270  int unit,
44272  uint32 data,
44273  uint32 mask);
44274 
44286  int unit,
44288  uint32 *data,
44289  uint32 *mask);
44290 
44301  int unit,
44303  uint8 data,
44304  uint8 mask);
44305 
44317  int unit,
44319  uint8 *data,
44320  uint8 *mask);
44321 
44332  int unit,
44334  uint8 data,
44335  uint8 mask);
44336 
44348  int unit,
44350  uint8 *data,
44351  uint8 *mask);
44352 
44363  int unit,
44365  uint8 data,
44366  uint8 mask);
44367 
44379  int unit,
44381  uint8 *data,
44382  uint8 *mask);
44383 
44394  int unit,
44396  uint32 data,
44397  uint32 mask);
44398 
44410  int unit,
44412  uint32 *data,
44413  uint32 *mask);
44414 
44424 extern int bcm_field_qualify_MplsLabel5(
44425  int unit,
44427  uint32 data,
44428  uint32 mask);
44429 
44441  int unit,
44443  uint32 *data,
44444  uint32 *mask);
44445 
44456  int unit,
44458  uint8 data,
44459  uint8 mask);
44460 
44472  int unit,
44474  uint8 *data,
44475  uint8 *mask);
44476 
44487  int unit,
44489  uint8 data,
44490  uint8 mask);
44491 
44503  int unit,
44505  uint8 *data,
44506  uint8 *mask);
44507 
44518  int unit,
44520  uint8 data,
44521  uint8 mask);
44522 
44534  int unit,
44536  uint8 *data,
44537  uint8 *mask);
44538 
44549  int unit,
44551  uint32 data,
44552  uint32 mask);
44553 
44565  int unit,
44567  uint32 *data,
44568  uint32 *mask);
44569 
44579 extern int bcm_field_qualify_MplsLabel6(
44580  int unit,
44582  uint32 data,
44583  uint32 mask);
44584 
44596  int unit,
44598  uint32 *data,
44599  uint32 *mask);
44600 
44611  int unit,
44613  uint8 data,
44614  uint8 mask);
44615 
44627  int unit,
44629  uint8 *data,
44630  uint8 *mask);
44631 
44642  int unit,
44644  uint8 data,
44645  uint8 mask);
44646 
44658  int unit,
44660  uint8 *data,
44661  uint8 *mask);
44662 
44673  int unit,
44675  uint8 data,
44676  uint8 mask);
44677 
44689  int unit,
44691  uint8 *data,
44692  uint8 *mask);
44693 
44704  int unit,
44706  uint32 data,
44707  uint32 mask);
44708 
44720  int unit,
44722  uint32 *data,
44723  uint32 *mask);
44724 
44734 extern int bcm_field_qualify_MplsLabel7(
44735  int unit,
44737  uint32 data,
44738  uint32 mask);
44739 
44751  int unit,
44753  uint32 *data,
44754  uint32 *mask);
44755 
44766  int unit,
44768  uint8 data,
44769  uint8 mask);
44770 
44782  int unit,
44784  uint8 *data,
44785  uint8 *mask);
44786 
44797  int unit,
44799  uint8 data,
44800  uint8 mask);
44801 
44813  int unit,
44815  uint8 *data,
44816  uint8 *mask);
44817 
44828  int unit,
44830  uint8 data,
44831  uint8 mask);
44832 
44844  int unit,
44846  uint8 *data,
44847  uint8 *mask);
44848 
44859  int unit,
44861  uint32 data,
44862  uint32 mask);
44863 
44875  int unit,
44877  uint32 *data,
44878  uint32 *mask);
44879 
44890  int unit,
44892  uint8 data,
44893  uint8 mask);
44894 
44906  int unit,
44908  uint8 *data,
44909  uint8 *mask);
44910 
44921  int unit,
44923  uint8 data,
44924  uint8 mask);
44925 
44937  int unit,
44939  uint8 *data,
44940  uint8 *mask);
44941 
44952  int unit,
44954  uint8 data,
44955  uint8 mask);
44956 
44968  int unit,
44970  uint8 *data,
44971  uint8 *mask);
44972 
44983  int unit,
44985  uint8 data,
44986  uint8 mask);
44987 
44999  int unit,
45001  uint8 *data,
45002  uint8 *mask);
45003 
45014  int unit,
45016  uint8 data,
45017  uint8 mask);
45018 
45030  int unit,
45032  uint8 *data,
45033  uint8 *mask);
45034 
45045  int unit,
45047  uint8 data,
45048  uint8 mask);
45049 
45061  int unit,
45063  uint8 *data,
45064  uint8 *mask);
45065 
45076  int unit,
45078  uint8 data,
45079  uint8 mask);
45080 
45092  int unit,
45094  uint8 *data,
45095  uint8 *mask);
45096 
45107  int unit,
45109  uint8 data,
45110  uint8 mask);
45111 
45123  int unit,
45125  uint8 *data,
45126  uint8 *mask);
45127 
45138  int unit,
45140  uint8 data,
45141  uint8 mask);
45142 
45154  int unit,
45156  uint8 *data,
45157  uint8 *mask);
45158 
45169  int unit,
45171  uint8 data,
45172  uint8 mask);
45173 
45185  int unit,
45187  uint8 *data,
45188  uint8 *mask);
45189 
45200  int unit,
45202  uint8 data,
45203  uint8 mask);
45204 
45216  int unit,
45218  uint8 *data,
45219  uint8 *mask);
45220 
45231  int unit,
45233  uint8 data,
45234  uint8 mask);
45235 
45247  int unit,
45249  uint8 *data,
45250  uint8 *mask);
45251 
45262  int unit,
45264  uint8 data,
45265  uint8 mask);
45266 
45278  int unit,
45280  uint8 *data,
45281  uint8 *mask);
45282 
45293  int unit,
45295  uint8 data,
45296  uint8 mask);
45297 
45309  int unit,
45311  uint8 *data,
45312  uint8 *mask);
45313 
45324  int unit,
45326  uint8 data,
45327  uint8 mask);
45328 
45340  int unit,
45342  uint8 *data,
45343  uint8 *mask);
45344 
45355  int unit,
45357  uint8 data,
45358  uint8 mask);
45359 
45371  int unit,
45373  uint8 *data,
45374  uint8 *mask);
45375 
45385 extern int bcm_field_qualify_ArpSrcMac(
45386  int unit,
45388  bcm_mac_t data,
45389  bcm_mac_t mask);
45390 
45402  int unit,
45404  bcm_mac_t *data,
45405  bcm_mac_t *mask);
45406 
45416 extern int bcm_field_qualify_ArpDstMac(
45417  int unit,
45419  bcm_mac_t data,
45420  bcm_mac_t mask);
45421 
45433  int unit,
45435  bcm_mac_t *data,
45436  bcm_mac_t *mask);
45437 
45448  int unit,
45450  uint32 data,
45451  uint32 mask);
45452 
45464  int unit,
45466  uint32 *data,
45467  uint32 *mask);
45468 
45478 extern int bcm_field_qualify_Stg(
45479  int unit,
45481  bcm_stg_t data,
45482  bcm_stg_t mask);
45483 
45494 extern int bcm_field_qualify_Stg_get(
45495  int unit,
45497  bcm_stg_t *data,
45498  bcm_stg_t *mask);
45499 
45510  int unit,
45512  uint16 data,
45513  uint16 mask);
45514 
45526  int unit,
45528  uint16 *data,
45529  uint16 *mask);
45530 
45540 extern int bcm_field_qualify_CopyToCpu(
45541  int unit,
45543  uint8 data,
45544  uint8 mask);
45545 
45557  int unit,
45559  uint8 *data,
45560  uint8 *mask);
45561 
45572  int unit,
45574  uint8 data,
45575  uint8 mask);
45576 
45588  int unit,
45590  uint8 *data,
45591  uint8 *mask);
45592 
45602 extern int bcm_field_qualify_McastPkt(
45603  int unit,
45605  uint8 data,
45606  uint8 mask);
45607 
45619  int unit,
45621  uint8 *data,
45622  uint8 *mask);
45623 
45633 extern int bcm_field_qualify_UntagPkt(
45634  int unit,
45636  uint8 data,
45637  uint8 mask);
45638 
45650  int unit,
45652  uint8 *data,
45653  uint8 *mask);
45654 
45665  int unit,
45667  uint8 data,
45668  uint8 mask);
45669 
45681  int unit,
45683  uint8 *data,
45684  uint8 *mask);
45685 
45694 extern int bcm_field_qualify_TxPortType(
45695  int unit,
45697  bcm_field_PortType_t port_type);
45698 
45708  int unit,
45710  bcm_field_PortType_t *port_type);
45711 
45720 extern int bcm_field_qualify_RxPortType(
45721  int unit,
45723  bcm_field_PortType_t port_type);
45724 
45734  int unit,
45736  bcm_field_PortType_t *port_type);
45737 
45746 extern int bcm_field_qualify_DstType(
45747  int unit,
45749  bcm_field_DstType_t dst_type);
45750 
45760  int unit,
45762  bcm_field_DstType_t *dst_type);
45763 
45773  int unit,
45775  bcm_field_DstType_t lb_hdr_dst_type);
45776 
45786  int unit,
45788  bcm_field_DstType_t *lb_hdr_dst_type);
45789 
45800  int unit,
45802  uint32 data,
45803  uint32 mask);
45804 
45816  int unit,
45818  uint32 *data,
45819  uint32 *mask);
45820 
45830 extern int bcm_field_qualify_PtpMsgType(
45831  int unit,
45833  uint8 data,
45834  uint8 mask);
45835 
45847  int unit,
45849  uint8 *data,
45850  uint8 *mask);
45851 
45861 extern int bcm_field_qualify_PtpVersion(
45862  int unit,
45864  uint8 data,
45865  uint8 mask);
45866 
45878  int unit,
45880  uint8 *data,
45881  uint8 *mask);
45882 
45892 extern int bcm_field_qualify_PtpPktCtrl(
45893  int unit,
45895  uint16 data,
45896  uint16 mask);
45897 
45909  int unit,
45911  uint16 *data,
45912  uint16 *mask);
45913 
45924  int unit,
45926  uint8 data,
45927  uint8 mask);
45928 
45940  int unit,
45942  uint8 *data,
45943  uint8 *mask);
45944 
45955  int unit,
45957  uint8 data,
45958  uint8 mask);
45959 
45971  int unit,
45973  uint8 *data,
45974  uint8 *mask);
45975 
45986  int unit,
45988  uint8 data,
45989  uint8 mask);
45990 
46002  int unit,
46004  uint8 *data,
46005  uint8 *mask);
46006 
46017  int unit,
46019  uint32 data,
46020  uint32 mask);
46021 
46033  int unit,
46035  uint32 *data,
46036  uint32 *mask);
46037 
46048  int unit,
46050  uint16 data,
46051  uint16 mask);
46052 
46064  int unit,
46066  uint16 *data,
46067  uint16 *mask);
46068 
46078 extern int bcm_field_qualify_L3Check(
46079  int unit,
46081  uint32 data,
46082  uint32 mask);
46083 
46095  int unit,
46097  uint32 *data,
46098  uint32 *mask);
46099 
46110  int unit,
46112  uint8 data,
46113  uint8 mask);
46114 
46126  int unit,
46128  uint8 *data,
46129  uint8 *mask);
46130 
46141  int unit,
46143  uint8 data,
46144  uint8 mask);
46145 
46157  int unit,
46159  uint8 *data,
46160  uint8 *mask);
46161 
46172  int unit,
46174  uint32 data,
46175  uint32 mask);
46176 
46188  int unit,
46190  uint32 *data,
46191  uint32 *mask);
46192 
46203  int unit,
46205  uint16 data,
46206  uint16 mask);
46207 
46219  int unit,
46221  uint16 *data,
46222  uint16 *mask);
46223 
46233 extern int bcm_field_qualify_IcmpType(
46234  int unit,
46236  uint8 data,
46237  uint8 mask);
46238 
46250  int unit,
46252  uint8 *data,
46253  uint8 *mask);
46254 
46265  int unit,
46267  uint8 data,
46268  uint8 mask);
46269 
46281  int unit,
46283  uint8 *data,
46284  uint8 *mask);
46285 
46296  int unit,
46298  uint8 data,
46299  uint8 mask);
46300 
46312  int unit,
46314  uint8 *data,
46315  uint8 *mask);
46316 
46328  int unit,
46330  bcm_mac_t data,
46331  bcm_mac_t mask);
46332 
46344  int unit,
46346  bcm_mac_t *data,
46347  bcm_mac_t *mask);
46348 
46360  int unit,
46362  bcm_mac_t data,
46363  bcm_mac_t mask);
46364 
46376  int unit,
46378  bcm_mac_t *data,
46379  bcm_mac_t *mask);
46380 
46392  int unit,
46394  bcm_ip_t data,
46395  bcm_ip_t mask);
46396 
46408  int unit,
46410  bcm_ip_t data,
46411  bcm_ip_t mask);
46412 
46424  int unit,
46426  bcm_ip_t *data,
46427  bcm_ip_t *mask);
46428 
46440  int unit,
46442  bcm_ip_t *data,
46443  bcm_ip_t *mask);
46444 
46456  int unit,
46458  bcm_ip6_t data,
46459  bcm_ip6_t mask);
46460 
46472  int unit,
46474  bcm_ip6_t data,
46475  bcm_ip6_t mask);
46476 
46488  int unit,
46490  bcm_ip6_t *data,
46491  bcm_ip6_t *mask);
46492 
46504  int unit,
46506  bcm_ip6_t *data,
46507  bcm_ip6_t *mask);
46508 
46520  int unit,
46522  uint8 data,
46523  uint8 mask);
46524 
46536  int unit,
46538  uint8 *data,
46539  uint8 *mask);
46540 
46551  int unit,
46553  uint32 intf_id,
46554  uint32 mask);
46555 
46567  int unit,
46569  uint32 *data,
46570  uint32 *mask);
46571 
46580 extern int bcm_field_qualify_PktFwdType(
46581  int unit,
46584 
46594  int unit,
46597 
46598 #endif /* BCM_HIDE_DISPATCHABLE */
46599 
46601 #define BCM_FIELD_COUNT_ALL 0
46602 #define BCM_FIELD_COUNT_GREEN 1
46603 #define BCM_FIELD_COUNT_YELLOW 2
46604 #define BCM_FIELD_COUNT_RED 4
46605 
46617 
46618 #ifndef BCM_HIDE_DISPATCHABLE
46619 
46629  int unit,
46631  bcm_field_flexctr_config_t *flexctr_cfg);
46632 
46642  int unit,
46644  bcm_field_flexctr_config_t *flexctr_cfg);
46645 
46646 #endif /* BCM_HIDE_DISPATCHABLE */
46647 
46659 
46667  bcm_field_presel_group_config_t *group_config);
46668 
46669 #ifndef BCM_HIDE_DISPATCHABLE
46670 
46679  int unit,
46680  bcm_field_presel_group_config_t *group_config);
46681 
46690  int unit,
46691  bcm_field_presel_group_t presel_group);
46692 
46701  int unit,
46702  bcm_field_presel_group_config_t *group_config);
46703 
46715  int unit,
46717  uint32 num_groups,
46718  bcm_subport_port_group_t *subport_group_id_arr);
46719 
46732  int unit,
46734  uint32 num_groups,
46735  bcm_subport_port_group_t *subport_group_id_arr,
46736  uint32 *actual_groups);
46737 
46748  int unit,
46750  uint16 data,
46751  uint16 mask);
46752 
46763  int unit,
46765  uint16 *data,
46766  uint16 *mask);
46767 
46778  int unit,
46780  uint16 data,
46781  uint16 mask);
46782 
46793  int unit,
46795  uint16 *data,
46796  uint16 *mask);
46797 
46808 extern int bcm_field_name_to_id(
46809  int unit,
46810  uint32 flags,
46811  bcm_field_name_to_id_info_t *name_to_id_info,
46812  int *nof_ids,
46813  uint32 *ids);
46814 
46833  int unit,
46834  bcm_field_presel_config_t *presel_config);
46835 
46845  int unit,
46847  bcm_field_egress_port_ctrl_t ctrl_type);
46848 
46858  int unit,
46860  bcm_field_egress_port_ctrl_t *ctrl_type);
46861 
46872  int unit,
46874  uint8 data,
46875  uint8 mask);
46876 
46887  int unit,
46889  uint8 *data,
46890  uint8 *mask);
46891 
46902  int unit,
46904  uint8 data,
46905  uint8 mask);
46906 
46917  int unit,
46919  uint8 *data,
46920  uint8 *mask);
46921 
46932  int unit,
46934  uint8 data,
46935  uint8 mask);
46936 
46947  int unit,
46949  uint8 *data,
46950  uint8 *mask);
46951 
46962  int unit,
46964  uint32 data,
46965  uint32 mask);
46966 
46977  int unit,
46979  uint32 *data,
46980  uint32 *mask);
46981 
46992  int unit,
46994  uint32 data,
46995  uint32 mask);
46996 
47007  int unit,
47009  uint32 *data,
47010  uint32 *mask);
47011 
47022  int unit,
47024  uint32 data,
47025  uint32 mask);
47026 
47037  int unit,
47039  uint32 *data,
47040  uint32 *mask);
47041 
47052  int unit,
47054  uint32 data,
47055  uint32 mask);
47056 
47067  int unit,
47069  uint32 *data,
47070  uint32 *mask);
47071 
47081 extern int bcm_field_qualify_IfaFlags(
47082  int unit,
47084  uint32 data,
47085  uint32 mask);
47086 
47097  int unit,
47099  uint32 *data,
47100  uint32 *mask);
47101 
47112  int unit,
47114  uint32 data,
47115  uint32 mask);
47116 
47127  int unit,
47129  uint32 *data,
47130  uint32 *mask);
47131 
47142  int unit,
47144  uint32 data,
47145  uint32 mask);
47146 
47157  int unit,
47159  uint32 *data,
47160  uint32 *mask);
47161 
47162 #endif /* BCM_HIDE_DISPATCHABLE */
47163 
47179 
47195 
47196 #ifndef BCM_HIDE_DISPATCHABLE
47197 
47211  int unit,
47212  uint32 options,
47215 
47228  int unit,
47231 
47232 #endif /* BCM_HIDE_DISPATCHABLE */
47233 
47236  int unit,
47239  void *user_data);
47240 
47241 #ifndef BCM_HIDE_DISPATCHABLE
47242 
47255  int unit,
47257  void *user_data);
47258 
47270  int unit,
47272 
47285  int unit,
47287  uint32 stat_counter_id);
47288 
47301  int unit,
47303  uint32 *stat_counter_id);
47304 
47316  int unit,
47318 
47331  int unit,
47333  uint32 value);
47334 
47347  int unit,
47349  uint32 *value);
47350 
47351 #endif /* BCM_HIDE_DISPATCHABLE */
47352 
47363 
47364 #ifndef BCM_HIDE_DISPATCHABLE
47365 
47378  int unit,
47379  uint32 flags,
47381  bcm_field_context_t context_id,
47382  uint32 configurable_range_index,
47383  bcm_field_range_qual_info_t *range_qualifier_info);
47384 
47397  int unit,
47398  uint32 flags,
47400  bcm_field_context_t context_id,
47401  uint32 configurable_range_index,
47402  bcm_field_range_qual_info_t *range_qualifier_info);
47403 
47414  int unit,
47416  uint16 data,
47417  uint16 mask);
47418 
47429  int unit,
47431  uint16 *data,
47432  uint16 *mask);
47433 
47444  int unit,
47446  uint16 data,
47447  uint16 mask);
47448 
47459  int unit,
47461  uint16 *data,
47462  uint16 *mask);
47463 
47472 extern int bcm_field_qualify_CosQueueId(
47473  int unit,
47475  bcm_gport_t queue_gport);
47476 
47486  int unit,
47488  bcm_gport_t *queue_gport);
47489 
47500  int unit,
47502  uint8 data,
47503  uint8 mask);
47504 
47515  int unit,
47517  uint8 *data,
47518  uint8 *mask);
47519 
47530  int unit,
47532  uint8 data,
47533  uint8 mask);
47534 
47545  int unit,
47547  uint8 *data,
47548  uint8 *mask);
47549 
47560  int unit,
47562  uint8 data,
47563  uint8 mask);
47564 
47575  int unit,
47577  uint8 *data,
47578  uint8 *mask);
47579 
47590  int unit,
47592  uint8 data,
47593  uint8 mask);
47594 
47605  int unit,
47607  uint8 *data,
47608  uint8 *mask);
47609 
47620  int unit,
47622  uint16 data,
47623  uint16 mask);
47624 
47635  int unit,
47637  uint16 *data,
47638  uint16 *mask);
47639 
47640 #endif /* BCM_HIDE_DISPATCHABLE */
47641 
47760 
47761 #define BCM_FIELD_DROP_REASON \
47762 { \
47763  "NoDrop", \
47764  "CMLFlags", \
47765  "L2SrcStaticMove", \
47766  "L2SrcDiscard", \
47767  "MacSaMulticast", \
47768  "OuterTpidCheckFailed", \
47769  "IncomingPvlanCheckFailed", \
47770  "PktIntegrityCheckFailed", \
47771  "ProtocolPktDrop", \
47772  "MembershipCheckFailed", \
47773  "SpanningTreeCheckFailed", \
47774  "L2DstLookupMiss", \
47775  "L2DstDiscard", \
47776  "L3DstLookupMiss", \
47777  "L3DstDiscard", \
47778  "L3HdrError", \
47779  "L3TTLError", \
47780  "IPMCL3IIFOrRPAIDCheckFailed", \
47781  "TunnelTTLCheckFailed", \
47782  "TunnelShimHdrError", \
47783  "TunnelObjectValidationFailed", \
47784  "TunnelAdaptDrop", \
47785  "PVLANDrop", \
47786  "VFP", \
47787  "IFP", \
47788  "IFPMeter", \
47789  "DSTFP", \
47790  "MplsProtectionDrop", \
47791  "MplsLabelActionInvalid", \
47792  "MplsTermPolicySelectTableDrop", \
47793  "MPLSReservedLabelExposed", \
47794  "MplsTTLError", \
47795  "MplsEcnError", \
47796  "EMFT", \
47797  "IVXLT", \
47798  "UrpfCheckFailed", \
47799  "SrcPortKnockoutDrop", \
47800  "LagFailoverPortDown", \
47801  "SplitHorizonCheckFailed", \
47802  "DstLinkDown", \
47803  "BlockMaskDrop", \
47804  "L3MtuCheckFailed", \
47805  "SeqNumCheckFailed", \
47806  "L3IIFEqL3OIF", \
47807  "StormControlDrop", \
47808  "EgrMembershipCheckFailed", \
47809  "EgrSpanningTreeCheckFailed", \
47810  "DstPBMZero", \
47811  "MplsCtrlPktDrop", \
47812  "L2OIFDrop", \
47813  "EgrMembershipDrop", \
47814  "DvpMembershipDrop", \
47815  "TtlDrop", \
47816  "L3SameIntfDrop", \
47817  "L2SamePortDrop", \
47818  "SplitHorizonDrop", \
47819  "SpanningTreeDisableDrop", \
47820  "SpanningTreeBlockDrop", \
47821  "EFP", \
47822  "EgrMeterDrop", \
47823  "EgrMtuDrop", \
47824  "EgrVxltDrop", \
47825  "EgrCellTooLargeDrop", \
47826  "EgrCellTooSmallDrop", \
47827  "QosRemarkingDrop", \
47828  "SvpEqualDvpDrop", \
47829  "Invalid1588Pkt", \
47830  "FlexEditorDrop", \
47831  "EgrRecircleHdrDrop", \
47832  "IfaMdDeleteDrop", \
47833  "IngPortGroupLimit", \
47834  "IngPortServicePoolLimit", \
47835  "IngHeadroomPoolLimit", \
47836  "EgrQueueLimit", \
47837  "EgrPortServicePoolLimit", \
47838  "WREDCheck", \
47839  "IngRecircleHdrDrop", \
47840  "MtopIpv4Gateway" \
47841 }
47842 
47844 #define BCM_FIELD_COPY_TO_CPU_REASON_NO_COPY_TO_CPU (1 << 0)
47846 #define BCM_FIELD_COPY_TO_CPU_REASON_CML_FLAGS (1 << 1)
47848 #define BCM_FIELD_COPY_TO_CPU_REASON_L2_SRC_STATIC_MOVE (1 << 2)
47850 #define BCM_FIELD_COPY_TO_CPU_REASON_L2_SRC_DISCARD (1 << 3)
47852 #define BCM_FIELD_COPY_TO_CPU_REASON_MACSA_MULTICAST (1 << 4)
47854 #define BCM_FIELD_COPY_TO_CPU_REASON_PKT_INTEGRITY_CHECK_FAILED (1 << 5)
47857 #define BCM_FIELD_COPY_TO_CPU_REASON_PROTOCOL_PKT (1 << 6)
47859 #define BCM_FIELD_COPY_TO_CPU_REASON_MEMBERSHIP_CHECK_FAILED (1 << 7)
47862 #define BCM_FIELD_COPY_TO_CPU_REASON_SPANNING_TREE_CHECK_FAILED (1 << 8)
47865 #define BCM_FIELD_COPY_TO_CPU_REASON_L2_DST_LOOKUP_MISS (1 << 9)
47867 #define BCM_FIELD_COPY_TO_CPU_REASON_L2_DST_LOOKUP (1 << 10)
47869 #define BCM_FIELD_COPY_TO_CPU_REASON_L3_DST_LOOKUP_MISS (1 << 11)
47871 #define BCM_FIELD_COPY_TO_CPU_REASON_L3_DST_LOOKUP (1 << 12)
47873 #define BCM_FIELD_COPY_TO_CPU_REASON_L3_HDR_ERROR (1 << 13)
47875 #define BCM_FIELD_COPY_TO_CPU_REASON_L3_TTL_ERROR (1 << 14)
47877 #define BCM_FIELD_COPY_TO_CPU_REASON_IPMC_L3_IIF_OR_RPA_ID_CHECK_FAILED (1 << 15)
47880 #define BCM_FIELD_COPY_TO_CPU_REASON_LEARN_CACHE_FULL (1 << 16)
47882 #define BCM_FIELD_COPY_TO_CPU_REASON_VFP (1 << 17)
47883 #define BCM_FIELD_COPY_TO_CPU_REASON_IFP (1 << 18)
47884 #define BCM_FIELD_COPY_TO_CPU_REASON_IFP_METER (1 << 19)
47886 #define BCM_FIELD_COPY_TO_CPU_REASON_DST_FP (1 << 20)
47888 #define BCM_FIELD_COPY_TO_CPU_REASON_SVP (1 << 21)
47889 #define BCM_FIELD_COPY_TO_CPU_REASON_EM_FT (1 << 22)
47890 #define BCM_FIELD_COPY_TO_CPU_REASON_IVXLT (1 << 23)
47891 #define BCM_FIELD_COPY_TO_CPU_REASON_MIRROR_SAMPLER_SAMPLED (1 << 24)
47893 #define BCM_FIELD_COPY_TO_CPU_REASON_MIRROR_SAMPLER_EGR_SAMPLED (1 << 25)
47896 #define BCM_FIELD_COPY_TO_CPU_REASON_SER_DROP (1 << 26)
47898 #define BCM_FIELD_COPY_TO_CPU_REASON_URPF_CHECK_FAILED (1 << 27)
47900 #define BCM_FIELD_COPY_TO_CPU_REASON_L3_IIF_EQ_L3_OIF (1 << 28)
47902 #define BCM_FIELD_COPY_TO_CPU_REASON_DLB_ECMP_MONITOR_EN_OR_MEMBER_REASSINED (1 << 29)
47905 #define BCM_FIELD_COPY_TO_CPU_REASON_DLB_LAG_MONITOR_EN_OR_MEMBER_REASSINED (1 << 30)
47908 #define BCM_FIELD_COPY_TO_CPU_REASON_MPLS_CTRL_PKT_TO_CPU (1U << 31)
47912 #define BCM_FIELD_COPY_TO_CPU_REASON_HIGH_MATCHED_RULE_BIT_0 (1 << 0)
47914 #define BCM_FIELD_COPY_TO_CPU_REASON_HIGH_MATCHED_RULE_BIT_1 (1 << 1)
47916 #define BCM_FIELD_COPY_TO_CPU_REASON_HIGH_MATCHED_RULE_BIT_2 (1 << 2)
47918 #define BCM_FIELD_COPY_TO_CPU_REASON_HIGH_MATCHED_RULE_BIT_3 (1 << 3)
47920 #define BCM_FIELD_COPY_TO_CPU_REASON_HIGH_MATCHED_RULE_BIT_4 (1 << 4)
47922 #define BCM_FIELD_COPY_TO_CPU_REASON_HIGH_MATCHED_RULE_BIT_5 (1 << 5)
47924 #define BCM_FIELD_COPY_TO_CPU_REASON_HIGH_MATCHED_RULE_BIT_6 (1 << 6)
47926 #define BCM_FIELD_COPY_TO_CPU_REASON_HIGH_MATCHED_RULE_BIT_7 (1 << 7)
47928 #define BCM_FIELD_COPY_TO_CPU_REASON_HIGH_TRACE_DO_NOT_MIRROR (1 << 8)
47930 #define BCM_FIELD_COPY_TO_CPU_REASON_HIGH_TRACE_DO_NOT_COPY_TO_CPU (1 << 9)
47932 #define BCM_FIELD_COPY_TO_CPU_REASON_HIGH_TRACE_DOP (1 << 10)
47935 #ifndef BCM_HIDE_DISPATCHABLE
47936 
47947  int unit,
47950 
47961  int unit,
47964 
47974 extern int bcm_field_qualify_DropReason(
47975  int unit,
47978 
47989  int unit,
47992 
48003  int unit,
48006 
48017  int unit,
48020 
48031  int unit,
48034 
48045  int unit,
48048 
48059  int unit,
48061  uint8 data,
48062  uint8 mask);
48063 
48075  int unit,
48077  uint8 *data,
48078  uint8 *mask);
48079 
48090  int unit,
48092  uint16 data,
48093  uint16 mask);
48094 
48106  int unit,
48108  uint16 *data,
48109  uint16 *mask);
48110 
48121  int unit,
48123  uint8 data,
48124  uint8 mask);
48125 
48137  int unit,
48139  uint8 *data,
48140  uint8 *mask);
48141 
48142 #endif /* BCM_HIDE_DISPATCHABLE */
48143 
48161 
48162 #define BCM_FIELD_MIRROR_ON_DROP_REASON \
48163 { \
48164  "SharedPoolLimit", \
48165  "IngressPortGroupLimit", \
48166  "IngressPortServicePoolLimit", \
48167  "IngressHeadroomPoolLimit", \
48168  "EgressQueueLimit", \
48169  "EgressPortServicePoolLimit", \
48170  "WREDCheck" \
48171 }
48172 
48173 #ifndef BCM_HIDE_DISPATCHABLE
48174 
48185  int unit,
48188 
48199  int unit,
48202 
48212 extern int bcm_field_qualify_IntCtrl(
48213  int unit,
48215  uint32 data,
48216  uint32 mask);
48217 
48229  int unit,
48231  uint32 *data,
48232  uint32 *mask);
48233 
48244  int unit,
48246  uint16 data,
48247  uint16 mask);
48248 
48260  int unit,
48262  uint16 *data,
48263  uint16 *mask);
48264 
48275  int unit,
48277  uint16 data,
48278  uint16 mask);
48279 
48291  int unit,
48293  uint16 *data,
48294  uint16 *mask);
48295 
48307  int unit,
48309  uint32 data,
48310  uint32 mask);
48311 
48323  int unit,
48325  uint32 *data,
48326  uint32 *mask);
48327 
48339  int unit,
48341  uint32 data,
48342  uint32 mask);
48343 
48355  int unit,
48357  uint32 *data,
48358  uint32 *mask);
48359 
48371  int unit,
48373  uint16 data,
48374  uint16 mask);
48375 
48387  int unit,
48389  uint16 *data,
48390  uint16 *mask);
48391 
48403  int unit,
48405  uint16 data,
48406  uint16 mask);
48407 
48419  int unit,
48421  uint16 *data,
48422  uint16 *mask);
48423 
48434  int unit,
48437 
48448  int unit,
48451 
48462  int unit,
48465 
48476  int unit,
48479 
48490  int unit,
48493 
48504  int unit,
48507 
48519  int unit,
48521  uint16 data,
48522  uint16 mask);
48523 
48535  int unit,
48537  uint16 *data,
48538  uint16 *mask);
48539 
48551  int unit,
48553  uint8 data,
48554  uint8 mask);
48555 
48567  int unit,
48569  uint8 *data,
48570  uint8 *mask);
48571 
48583  int unit,
48585  uint32 data,
48586  uint32 mask);
48587 
48599  int unit,
48601  uint32 *data,
48602  uint32 *mask);
48603 
48615  int unit,
48617  uint8 data,
48618  uint8 mask);
48619 
48631  int unit,
48633  uint8 *data,
48634  uint8 *mask);
48635 
48647  int unit,
48649  uint8 data,
48650  uint8 mask);
48651 
48663  int unit,
48665  uint8 *data,
48666  uint8 *mask);
48667 
48679  int unit,
48681  uint8 data,
48682  uint8 mask);
48683 
48695  int unit,
48697  uint8 *data,
48698  uint8 *mask);
48699 
48709  int unit,
48711  bcm_gport_t tunnel_port_id);
48712 
48723  int unit,
48725  bcm_gport_t *tunnel_port_id);
48726 
48727 #endif /* BCM_HIDE_DISPATCHABLE */
48728 
48735 
48736 #define BCM_FIELD_PKT_QUEUE_NOTIF \
48737 { \
48738  "CongestionIndication", \
48739  "UnicastQueuing" \
48740 }
48741 
48742 #ifndef BCM_HIDE_DISPATCHABLE
48743 
48754  int unit,
48757 
48768  int unit,
48771 
48772 #endif /* BCM_HIDE_DISPATCHABLE */
48773 
48782 
48783 #define BCM_FIELD_MAST_PKT_REASON \
48784 { \
48785  "SwitchCopy", \
48786  "ReplicatedCopy", \
48787  "L3Only", \
48788  "LastCount" \
48789 }
48790 
48791 #ifndef BCM_HIDE_DISPATCHABLE
48792 
48803  int unit,
48806 
48817  int unit,
48820 
48831  int unit,
48833  uint8 data,
48834  uint8 mask);
48835 
48847  int unit,
48849  uint8 *data,
48850  uint8 *mask);
48851 
48852 #endif /* BCM_HIDE_DISPATCHABLE */
48853 
48860 
48894 
48895 #define BCM_FIELD_COMPRESSION_TYPE \
48896 { \
48897  "DirectMapTypeTtl", \
48898  "DirectMapTypeTos", \
48899  "DirectMapTypeTcp", \
48900  "IndexMapTypeEthertype", \
48901  "IndexMapTypeIpProtocol", \
48902  "DirectMapTypeTtlZero", \
48903  "DirectMapTypeTtlOne", \
48904  "DirectMapTypeTosZero", \
48905  "DirectMapTypeTosOne", \
48906  "DirectMapTypeTcpZero", \
48907  "DirectMapTypeTcpOne", \
48908  "DirectMapTypeIpTunnelTtl", \
48909  "DirectMapTypeIpProtocol" \
48910 }
48911 
48912 #ifndef BCM_HIDE_DISPATCHABLE
48913 
48926  int unit,
48928  bcm_pbmp_t ports,
48929  uint16 entry_cnt,
48930  uint16 *val_arr,
48931  uint16 *map_val_arr);
48932 
48945  int unit,
48947  bcm_pbmp_t ports,
48948  uint16 entry_cnt,
48949  uint16 *val_arr,
48950  uint16 *map_val_arr);
48951 
48964  int unit,
48966  uint16 index,
48967  bcm_pbmp_t ports,
48968  uint16 val,
48969  uint16 map_val);
48970 
48983  int unit,
48985  uint16 index,
48986  bcm_pbmp_t ports,
48987  uint16 *val,
48988  uint16 *map_val);
48989 
48999 extern int bcm_field_qualify_MHPriority(
49000  int unit,
49002  uint8 data,
49003  uint8 mask);
49004 
49015  int unit,
49017  uint8 *data,
49018  uint8 *mask);
49019 
49030  int unit,
49032  uint8 data,
49033  uint8 mask);
49034 
49046  int unit,
49048  uint8 *data,
49049  uint8 *mask);
49050 
49061 extern int bcm_field_qualify_IntFlags(
49062  int unit,
49064  uint8 data,
49065  uint8 mask);
49066 
49078  int unit,
49080  uint8 *data,
49081  uint8 *mask);
49082 
49094  int unit,
49096  uint8 data,
49097  uint8 mask);
49098 
49110  int unit,
49112  uint8 *data,
49113  uint8 *mask);
49114 
49126  int unit,
49128  uint8 data,
49129  uint8 mask);
49130 
49142  int unit,
49144  uint8 *data,
49145  uint8 *mask);
49146 
49158  int unit,
49160  uint8 data,
49161  uint8 mask);
49162 
49174  int unit,
49176  uint8 *data,
49177  uint8 *mask);
49178 
49190  int unit,
49192  uint8 data,
49193  uint8 mask);
49194 
49206  int unit,
49208  uint8 *data,
49209  uint8 *mask);
49210 
49211 #endif /* BCM_HIDE_DISPATCHABLE */
49212 
49221 
49222 #define BCM_FIELD_INT_HEADER_LOCATION \
49223 { \
49224  "bcmfieldIntHdrLocationInner", \
49225  "bcmfieldIntHdrLocationOuter", \
49226  "bcmfieldIntHdrLocationBoth" \
49227 }
49228 
49237 
49238 #define BCM_FIELD_INT_HEADER_TYPE \
49239 { \
49240  "bcmfieldIntHdrTypeNone", \
49241  "bcmfieldIntHdrTypeINTDP", \
49242  "bcmfieldIntHdrTypeIFA", \
49243  "bcmfieldIntHdrTypeIOAM" \
49244 }
49245 
49246 #ifndef BCM_HIDE_DISPATCHABLE
49247 
49257 extern int bcm_field_qualify_IntHdrType(
49258  int unit,
49260  bcm_field_IntHdr_Type_t int_type);
49261 
49272  int unit,
49274  bcm_field_IntHdr_Type_t *int_type);
49275 
49286  int unit,
49288  bcm_field_IntHdr_Location_t int_type);
49289 
49300  int unit,
49302  bcm_field_IntHdr_Location_t *int_type);
49303 
49304 #endif /* BCM_HIDE_DISPATCHABLE */
49305 
49319 
49320 #ifndef BCM_HIDE_DISPATCHABLE
49321 
49331  int unit,
49333  bcm_field_pkt_misc_ctrl_t pkt_misc_ctrl);
49334 
49344  int unit,
49346  bcm_field_pkt_misc_ctrl_t *pkt_misc_ctrl);
49347 
49357 extern int bcm_field_qualify_HiGig3Pkt(
49358  int unit,
49360  uint8 data,
49361  uint8 mask);
49362 
49373  int unit,
49375  uint8 *data,
49376  uint8 *mask);
49377 
49388  int unit,
49390  uint8 data,
49391  uint8 mask);
49392 
49403  int unit,
49405  uint8 *data,
49406  uint8 *mask);
49407 
49408 #endif /* BCM_HIDE_DISPATCHABLE */
49409 
49411 #define BCM_FIELD_OUTER_VLAN_TAG_PRESERVE (1 << 0)
49413 #define BCM_FIELD_INNER_VLAN_TAG_PRESERVE (1 << 1)
49416 #ifndef BCM_HIDE_DISPATCHABLE
49417 
49429  int unit,
49431  uint8 data,
49432  uint8 mask);
49433 
49445  int unit,
49447  uint8 *data,
49448  uint8 *mask);
49449 
49460  int unit,
49462  uint16 data,
49463  uint16 mask);
49464 
49475  int unit,
49477  uint16 *data,
49478  uint16 *mask);
49479 
49490  int unit,
49492  uint8 data,
49493  uint8 mask);
49494 
49505  int unit,
49507  uint8 *data,
49508  uint8 *mask);
49509 
49520  int unit,
49522  uint16 data,
49523  uint16 mask);
49524 
49535  int unit,
49537  uint8 data,
49538  uint8 mask);
49539 
49549 extern int bcm_field_qualify_GpeFlags(
49550  int unit,
49552  uint8 data,
49553  uint8 mask);
49554 
49565  int unit,
49567  uint32 data,
49568  uint32 mask);
49569 
49580  int unit,
49582  uint8 data,
49583  uint8 mask);
49584 
49595  int unit,
49597  uint16 data,
49598  uint16 mask);
49599 
49610  int unit,
49612  uint8 data,
49613  uint8 mask);
49614 
49625  int unit,
49627  uint16 data,
49628  uint16 mask);
49629 
49640  int unit,
49642  uint8 data,
49643  uint8 mask);
49644 
49655  int unit,
49657  uint32 data,
49658  uint32 mask);
49659 
49670  int unit,
49672  uint32 data,
49673  uint32 mask);
49674 
49684 extern int bcm_field_qualify_TcpAckNum(
49685  int unit,
49687  uint32 data,
49688  uint32 mask);
49689 
49700  int unit,
49702  uint32 data,
49703  uint32 mask);
49704 
49714 extern int bcm_field_qualify_UdpLength(
49715  int unit,
49717  uint16 data,
49718  uint16 mask);
49719 
49730  int unit,
49732  uint8 data,
49733  uint8 mask);
49734 
49745  int unit,
49747  uint8 data,
49748  uint8 mask);
49749 
49760  int unit,
49762  uint16 data,
49763  uint16 mask);
49764 
49775  int unit,
49777  uint8 data,
49778  uint8 mask);
49779 
49790  int unit,
49792  uint8 data,
49793  uint8 mask);
49794 
49805  int unit,
49807  uint32 data,
49808  uint32 mask);
49809 
49820  int unit,
49822  uint8 data,
49823  uint8 mask);
49824 
49835  int unit,
49837  uint16 data,
49838  uint16 mask);
49839 
49850  int unit,
49852  uint8 data,
49853  uint8 mask);
49854 
49865  int unit,
49867  uint16 data,
49868  uint16 mask);
49869 
49880  int unit,
49882  uint8 data,
49883  uint8 mask);
49884 
49895  int unit,
49897  uint32 data,
49898  uint32 mask);
49899 
49910  int unit,
49912  uint32 data,
49913  uint32 mask);
49914 
49925  int unit,
49927  uint32 data,
49928  uint32 mask);
49929 
49940  int unit,
49942  uint32 data,
49943  uint32 mask);
49944 
49955  int unit,
49957  uint16 data,
49958  uint16 mask);
49959 
49970  int unit,
49972  uint8 data,
49973  uint8 mask);
49974 
49985  int unit,
49987  uint8 data,
49988  uint8 mask);
49989 
50004 extern int bcm_field_stage_aset_get(
50005  int unit,
50007  bcm_field_aset_t *aset);
50008 
50031  int unit,
50034  uint8 max_ct,
50035  uint16 *cont_id_arr,
50036  uint16 *cont_sz_arr,
50037  uint8 *actual_ct,
50038  uint8 *action_size);
50039 
50050  int unit,
50052  uint8 data,
50053  uint8 mask);
50054 
50065  int unit,
50067  uint8 *data,
50068  uint8 *mask);
50069 
50079 extern int bcm_field_qualify_PdelayReq(
50080  int unit,
50082  uint8 data,
50083  uint8 mask);
50084 
50095  int unit,
50097  uint8 *data,
50098  uint8 *mask);
50099 
50100 #endif /* BCM_HIDE_DISPATCHABLE */
50101 
50108  uint32 value[BCM_FIELD_QUAL_WIDTH_IN_WORDS];
50109  uint32 mask[BCM_FIELD_QUAL_WIDTH_IN_WORDS];
50112 
50120  uint32 value[BCM_FIELD_ACTION_WIDTH_IN_WORDS];
50123  uint32 mask[BCM_FIELD_ACTION_WIDTH_IN_WORDS];
50134 
50151 
50156  bcm_field_flush_entry_qual_t entry_qual[BCM_FIELD_NUMBER_OF_QUALS_PER_GROUP];
50161  bcm_field_flush_entry_action_t entry_action[BCM_FIELD_NUMBER_OF_ACTIONS_PER_GROUP];
50167 
50175  bcm_field_flush_entry_action_t entry_action[BCM_FIELD_NUMBER_OF_ACTIONS_PER_GROUP];
50179 
50188 
50189 #ifndef BCM_HIDE_DISPATCHABLE
50190 
50201  int unit,
50202  uint32 flags,
50203  bcm_field_flush_profile_info_t *flush_profile_info,
50204  uint32 *flush_profile_id);
50205 
50215 extern int bcm_field_flush_profile_get(
50216  int unit,
50217  uint32 flags,
50218  uint32 flush_profile_id,
50219  bcm_field_flush_profile_info_t *flush_profile_info);
50220 
50230  int unit,
50231  uint32 flags,
50232  uint32 flush_profile_id);
50233 
50244  int unit,
50245  uint32 flags,
50246  bcm_field_group_t fg_id,
50247  uint32 flush_profile_id);
50248 
50259 extern int bcm_field_flush_entry_add(
50260  int unit,
50261  uint32 flags,
50262  bcm_field_group_t fg_id,
50263  int entry_id,
50264  bcm_field_flush_entry_info_t *flush_entry_info);
50265 
50276 extern int bcm_field_flush_entry_get(
50277  int unit,
50278  uint32 flags,
50279  bcm_field_group_t fg_id,
50280  int entry_id,
50281  bcm_field_flush_entry_info_t *flush_entry_info);
50282 
50292 extern int bcm_field_flush_entry_delete(
50293  int unit,
50294  uint32 flags,
50295  bcm_field_group_t fg_id,
50296  int entry_id);
50297 
50298 #endif /* BCM_HIDE_DISPATCHABLE */
50299 
50307  bcm_field_flush_entry_info_t *flush_entry_info);
50308 
50316  bcm_field_flush_profile_info_t *flush_profile_info);
50317 
50318 #ifndef BCM_HIDE_DISPATCHABLE
50319 
50335  int unit,
50337  bcm_if_t data,
50338  bcm_if_t mask);
50339 
50350  int unit,
50352  bcm_if_t *data,
50353  bcm_if_t *mask);
50354 
50370  int unit,
50372  bcm_if_t data,
50373  bcm_if_t mask);
50374 
50385  int unit,
50387  bcm_if_t *data,
50388  bcm_if_t *mask);
50389 
50403  int unit,
50405  uint8 data,
50406  uint8 mask);
50407 
50418  int unit,
50420  uint8 *data,
50421  uint8 *mask);
50422 
50436  int unit,
50438  uint8 data,
50439  uint8 mask);
50440 
50451  int unit,
50453  uint8 *data,
50454  uint8 *mask);
50455 
50469  int unit,
50471  uint8 data,
50472  uint8 mask);
50473 
50484  int unit,
50486  uint8 *data,
50487  uint8 *mask);
50488 
50502  int unit,
50504  uint8 data,
50505  uint8 mask);
50506 
50517  int unit,
50519  uint8 *data,
50520  uint8 *mask);
50521 
50534 extern int bcm_field_qualify_IpFragInfo(
50535  int unit,
50537  uint16 data,
50538  uint16 mask);
50539 
50550  int unit,
50552  uint16 *data,
50553  uint16 *mask);
50554 
50568  int unit,
50570  uint32 data,
50571  uint32 mask);
50572 
50583  int unit,
50585  uint32 *data,
50586  uint32 *mask);
50587 
50597 extern int bcm_field_qualify_InDscpExp(
50598  int unit,
50600  uint8 data,
50601  uint8 mask);
50602 
50614  int unit,
50616  uint8 *data,
50617  uint8 *mask);
50618 
50632  int unit,
50633  bcm_field_group_mode_type_t mode_type,
50634  bcm_field_group_packet_type_t packet_type,
50636 
50649 extern int bcm_field_qualify_IfaNextHdr(
50650  int unit,
50652  uint8 data,
50653  uint8 mask);
50654 
50665  int unit,
50667  uint8 *data,
50668  uint8 *mask);
50669 
50682 extern int bcm_field_qualify_IfaVersion(
50683  int unit,
50685  uint8 data,
50686  uint8 mask);
50687 
50698  int unit,
50700  uint8 *data,
50701  uint8 *mask);
50702 
50713  int unit,
50715  uint8 data,
50716  uint8 mask);
50717 
50729  int unit,
50731  uint8 *data,
50732  uint8 *mask);
50733 
50744  int unit,
50746  uint8 data,
50747  uint8 mask);
50748 
50760  int unit,
50762  uint8 *data,
50763  uint8 *mask);
50764 
50775  int unit,
50777  uint8 data,
50778  uint8 mask);
50779 
50791  int unit,
50793  uint8 *data,
50794  uint8 *mask);
50795 
50806  int unit,
50808  uint32 data,
50809  uint32 mask);
50810 
50822  int unit,
50824  uint32 *data,
50825  uint32 *mask);
50826 
50837  int unit,
50839  int data,
50840  int mask);
50841 
50853  int unit,
50855  int *data,
50856  int *mask);
50857 
50869  int unit,
50871  uint32 data,
50872  uint32 mask);
50873 
50885  int unit,
50887  uint32 *data,
50888  uint32 *mask);
50889 
50890 #endif /* BCM_HIDE_DISPATCHABLE */
50891 
50900 
50901 #define BCM_FIELD_MPLS_CTRL_PKT_TYPE \
50902 { \
50903  "None", \
50904  "PwVccv4", \
50905  "GAch" \
50906 }
50907 
50908 #ifndef BCM_HIDE_DISPATCHABLE
50909 
50920  int unit,
50923 
50934  int unit,
50937 
50938 #endif /* BCM_HIDE_DISPATCHABLE */
50939 
50940 #endif /* __BCM_FIELD_H__ */
50941 
int bcm_field_qualify_TtlClassZero(int unit, bcm_field_entry_t entry, bcm_class_t data, bcm_class_t mask)
Configure match criteria for bcmFieldQualifyTtlClassZero qualifier from the field entry.
int bcm_field_qualify_InterfaceIngressKeySelectClassPort(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for bcmFieldQualifyInterfaceIngressKeySelectClassPort qualifier in the field entry...
int bcm_field_qualify_DstHiGig_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyDstHiGig qualifier from the field entry.
int bcm_field_qualify_LlidValue(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
bcm_field_qualify_LlidValue
int bcm_field_qualify_VxlanVnidVlanTranslateHit_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyVxlanVnidVlanTranslateHit qualifier from the field entry.
unsigned short uint16
Definition: types.h:51
int bcm_field_qualify_CnTagPresent_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
API to retrieve congestion tag present status associated to a given field entry.
struct bcm_field_qset_s bcm_field_qset_t
int bcm_field_qualify_FlowtrackerMeteringExceeded(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Qualifies on event whether Flowtracker metering is exceeded.
int bcm_field_qualify_FibreChanVFTValid_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyFibreChanVFTValid qualifier from the field entry.
int bcm_field_qualify_FibreChanVFTVsanPri(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyFibreChanVFTVsanPri qualifier in the field entry.
int bcm_field_qualify_FibreChanSrcIdClass_get(int unit, bcm_field_entry_t entry, bcm_class_t *data, bcm_class_t *mask)
Get match criteria for bcmFieldQualifyFibreChanSrcIdClass qualifier from the field entry.
int bcm_field_qualify_DstMultipath_get(int unit, bcm_field_entry_t entry, bcm_if_t *mpintf)
bcm_field_qualify_DstMultipath_get
int bcm_field_qualify_HiGigIntCongestionNotification(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyHiGigIntCongestionNotification qualifier in the field entry.
bcm_field_macsec_pkt_type_e
Definition: field.h:8352
struct bcm_field_fem_extraction_s bcm_field_fem_extraction_t
int bcm_field_qualify_VxlanClassValid_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyVxlanClassValid qualifier from the field entry.
int bcm_field_qualify_IngressECid_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyIngressECid qualifier from the field entry.
int bcm_field_qualify_InnerTos_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyInnerTos qualifier from the field entry.
int bcm_field_qualify_FlowtrackerClassIdSource1_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
To get qualified inputs on Flowtracker Class from Source 1.
int bcm_field_qualify_RoceBthPartitionKey(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Set match criteria for bcmFieldQualifyRoceBthPartitionKey qualifier in the field entry.
int bcm_field_qualify_MacSecControlPkt(int unit, bcm_field_entry_t entry, bcm_field_macsec_encrypt_decrypt_pkt_t data)
To qualify on the MACSEC control packet.
int bcm_field_qualify_IngressInterfaceClassVPort_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyIngressInterfaceClassVPort qualifier in the field entry.
int bcm_field_qualify_ForwardHdrDstMac_get(int unit, bcm_field_entry_t entry, bcm_mac_t *data, bcm_mac_t *mask)
Get match criteria for bcmFieldQualifyForwardHdrDstMac qualifier from the field entry.
int bcm_field_action_mac_get(int unit, bcm_field_entry_t entry, bcm_field_action_t action, bcm_mac_t *mac)
Retrieve the parameters for an action previously added to a field entry.
Definition: field.h:37352
int bcm_field_qualify_OpaqueTagLow_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
To get the qualified inputs on the lower 32 bits of opaque tag allowed in the system.
int bcm_field_qualify_MyStation2Hit_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyMyStation2Hit qualifier from the field entry.
int bcm_field_qualify_IngressInterfaceClassPort_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyIngressInterfaceClassPort qualifier in the field entry.
int bcm_field_qualify_OuterL5PayloadByte5_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyOuterL5PayloadByte5 qualifier from the field entry.
int bcm_field_qualify_VlanFormat_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyVlanFormat qualifier from the field entry.
int bcm_field_qualify_VlanAction_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for Vlan Action ID qualifier.
int bcm_field_qualify_Ipv4OptionHdrType(int unit, bcm_field_entry_t entry, bcm_field_ip_option_hdr_type_t type)
API to add IPv4 option header type to a field entry for qualification.
int bcm_field_stat_multi_get32(int unit, int stat_id, int nstat, bcm_field_stat_t *stat_arr, uint32 *value_arr)
Get 32-bit counter values for multiple statistic types.
int bcm_field_qualify_StpState_get(int unit, bcm_field_entry_t entry, uint8 *data)
Get match criteria for VLAN STG STP states.
bcm_field_redirect_destination_type_t destination_type
Definition: field.h:9098
int bcm_field_qualify_EgressForwardingClassId(int unit, bcm_field_entry_t entry, int data, int mask)
To qualify on Class identifier assigned by Egress adaptation forwarding tables.
int bcm_field_qualify_ForwardingOuterTpid(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Set match criteria for bcmFieldQualifyForwardingOuterTpid qualifier in the field entry.
int bcm_field_qualify_CpuVisibilityPacket_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyCpuVisibilityPacket qualifier from the field entry.
enum bcm_field_int_pkt_type_e bcm_field_int_pkt_type_t
int bcm_field_stat_get(int unit, int stat_id, bcm_field_stat_t stat, uint64 *value)
Get 64-bit counter value for specific statistic type.
int bcm_field_qualify_FlowtrackerLearn(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Qualifies whether the packet flow is learnt by Flowtracker module.
int bcm_field_qualify_Ip4Tos_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyIp4Tos qualifier from the field entry.
int bcm_field_qualify_ClassId(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for ClassId qualifier.
enum bcm_field_stat_action_e bcm_field_stat_action_t
int bcm_field_qualify_Rtag7AHashLower(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Set match criteria for Rtag7AHashLower qualifier.
int bcm_field_qualify_OpaqueTagHigh(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Qualifies on the higher 32 bits of opaque tag allowed in the system.
enum bcm_field_mirror_on_drop_reason_e bcm_field_mirror_on_drop_reason_t
int bcm_field_qualify_PacketLengthRangeCheck(int unit, bcm_field_entry_t entry, bcm_field_range_t range, int invert)
Set match criteria for PacketLengthRangeCheck qualifier.
int bcm_field_qualify_IngressClassField(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for bcmFieldQualifyIngressClassField qualifier in the field entry.
int bcm_field_qualify_EthernetOamInterfaceClassNiv_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyEthernetOamInterfaceClassNiv.
unsigned char uint8
Definition: types.h:50
int bcm_field_stat_create(int unit, bcm_field_group_t group, int nstat, bcm_field_stat_t *stat_arr, int *stat_id)
Create stat collection entity.
struct bcm_field_context_compare_info_s bcm_field_context_compare_info_t
int bcm_field_qualify_ArpTargetIp4_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyArpTargetIp4 qualifier in the field entry.
int bcm_field_qualify_IEEE1588HeaderOffset_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for field_qualify_IEEE1588HeaderOffset_get.
int bcm_field_qualify_TunnelPayloadL4DstPort(int unit, bcm_field_entry_t entry, bcm_l4_port_t data, bcm_l4_port_t mask)
Get match criteria for bcmFieldQualifyTunnelPayloadL4DstPort qualifier in the field entry.
int bcm_field_qualify_DstWlanGport(int unit, bcm_field_entry_t entry, bcm_gport_t wlan_port_id)
bcm_field_qualify_DstWlanGport
int bcm_field_qualify_IpmcStarGroupValue_get(int unit, bcm_field_entry_t entry, uint64 *data, uint64 *mask)
Get match criteria for IpmcStarGroupValue qualifier.
int bcm_field_qualify_L3EgressIntf(int unit, bcm_field_entry_t entry, uint32 intf_id, uint32 mask)
bcm_field_qualify_L3EgressIntf
int bcm_field_group_add(int unit, uint32 flags, bcm_field_group_info_t *fg_info, bcm_field_group_t *fg_id)
This function creates a new Field group of any type on a desired stage.
int bcm_field_qualify_IfaLocalNameSpace(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
To qualify on IFA Local Name Space.
int bcm_field_qualify_FlowtrackerGroupFlowExceeded(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Qualifies on the event whether flow limit for Flowtracker is exceeded.
</td >< td > Detach counter entries to the given L3 route</td ></tr ></table > section Tunnel L3 tunneling APIs< table >< tr >< th > API</th >< th > Brief</th ></tr >< tr >< td > bcm_tunnel_terminator_t *info</td >< td > Add a tunnel terminator for DIP SIP key</td ></tr >< tr >< td > bcm_tunnel_terminator_t *info</td >< td > Delete a tunnel terminator for DIP SIP key</td ></tr >< tr >< td > bcm_tunnel_terminator_traverse_cb void *user_data</td >< td > Traverse tunnel terminator</td ></tr >< tr >< td > bcm_gport_t bcm_vlan_vector_t vlan_vec</td >< td > Set the valid payload VLANs for this WLAN tunnel</td ></tr >< tr >< td > uint32 bcm_tunnel_terminator_config_key_t bcm_tunnel_terminator_config_action_t *config_action</td >< td > Add tunnel terminator config entries</td ></tr >< tr >< td > bcm_tunnel_terminator_config_key_t *config_key</td >< td > Delete tunnel terminator config entries</td ></tr >< tr >< td > bcm_l3_intf_t bcm_tunnel_initiator_t *tunnel</td >< td > Set the tunneling initiator parameters on an L3 interface</td ></tr >< tr >< td > bcm_l3_intf_t *intf</td >< td > Delete the tunnel association for the given L3 interface</td ></tr >< tr >< td > bcm_l3_intf_t bcm_tunnel_initiator_t *tunnel</td >< td > Get the tunnel property for the given L3 interface</td ></tr >< tr >< td > uint32 int *dscp_map_id</td >< td > Create a tunnel DSCP map instance</td ></tr >< tr >< td > bcm_port_t bcm_tunnel_dscp_map_t *dscp_map</td >< td > Set treated as IPv4 address</td ></tr >< tr >< td > treated as IPv4 address</td ></tr >< tr >< td > treated as IPv4 address</td ></tr >< tr >< td > treated as IPv4 address</td ></tr >< tr >< td > bcm_vrf_t bcm_l3_vrf_stat_t uint32 *val</td >< td > Get L3 VRF counter value for specified VRF statistic type</td ></tr >< tr >< td > bcm_vrf_t bcm_l3_vrf_stat_t uint32 *val</td >< td > Force an immediate counter update and retrieve L3 VRF counter value for specified VRF statistic type</td ></tr >< tr >< td > bcm_vrf_t bcm_l3_vrf_stat_t uint32 val</td >< td > Set L3 VRF counter value for specified VRF statistic type</td ></tr >< tr >< td > bcm_vrf_t int bcm_l3_vrf_stat_t * stat_arr
Definition: l3.dox:3586
int bcm_field_qualify_CapwapPayloadL3HdrParseable(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyCapwapPayloadL3HdrParseable qualifier in the field entry.
int bcm_field_qualify_OuterVlanPriCfi_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyOuterVlanPriCfi qualifier from the field entry.
int bcm_field_qualify_PtpTransportSpec(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for PTP Transport Spec in the field entry.
int bcm_field_qualify_HiGigDstPortGport_get(int unit, bcm_field_entry_t entry, bcm_gport_t *port_id, bcm_gport_t *port_mask)
Get match criteria for bcmFieldQualifyHiGigDstPortGport qualifier from the field entry.
int bcm_field_qualify_DstMac(int unit, bcm_field_entry_t entry, bcm_mac_t data, bcm_mac_t mask)
bcm_field_qualify_DstMac
int bcm_field_qualify_InterfaceClassMpls_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get value for bcmFieldQualifyInterfaceClassMpls qualifier from the field entry.
int bcm_field_qualify_VnTag(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
bcm_field_qualify_VnTag
int bcm_field_qualify_DstPortSRLanId(int unit, bcm_field_entry_t entry, uint8 lan_id)
Set match criteria for bcmFieldQualifyDstPortSRLanId.
int bcm_field_qualify_MplsLabel6Exp_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyMplsLabel6Exp qualifier from the field entry.
int bcm_field_qualify_OamMepId(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for OamMepId qualifier.
int bcm_field_qualify_TrillIngressRbridgeHit(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for TrillIngressRbridgeHit qualifier.
int bcm_field_qualify_Ip4Tos(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_Ip4Tos
int bcm_field_qualify_MplsForwardingControlWord_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for Mpls Forwarding ControlWord qualifier.
int bcm_field_qualify_FibreChanDstId_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyFibreChanDstId qualifier from the field entry.
int bcm_field_qualify_InterfaceLookupClassPort_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyInterfaceLookupClassPort qualifier in the field entry.
struct bcm_field_internal_to_bcm_map_s bcm_field_internal_to_bcm_map_t
bcm_field_sr_port_mode_e
Definition: field.h:34271
enum bcm_field_TunnelTerminationProcessingProfile_e bcm_field_TunnelTerminationProcessingProfile_t
uint8 valid_bit
Definition: field.h:39059
int bcm_field_qualify_ArpOpcode_get(int unit, bcm_field_entry_t entry, bcm_field_ArpOpcode_t *data)
Get match criteria for bcmFieldQualifyArpOpcode qualifier in the field entry.
int bcm_field_qualify_DstVxlanGport_get(int unit, bcm_field_entry_t entry, bcm_gport_t *vxlan_port_id)
Get match criteria for bcmFieldQualifyDstVxlanGport qualifier from the field entry.
int bcm_field_qualify_VlanMembershipCheck_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyVlanMembershipCheck qualifier from the field entry.
int bcm_field_qualify_Stg(int unit, bcm_field_entry_t entry, bcm_stg_t data, bcm_stg_t mask)
To qualify on spanning tree profile index.
int bcm_field_qualify_MplsLabel5Id(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
To qualify on MPLS label5 id value.
int bcm_field_qualify_CapwapHdrRid_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyCapwapHdrRid qualifier from the field entry.
int bcm_field_qualify_IngressVPortBridgeDisable_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyIngressVPortBridgeDisable qualifier from the field entry.
int bcm_field_qualify_IntUdpChecksumEqualsZero(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for IntUdpChecksumEqualsZero qualifier.
int bcm_field_qualify_SrcPortSRNetId(int unit, bcm_field_entry_t entry, uint8 net_id, uint8 mask)
Set match criteria for bcmFieldQualifySrcPortSRNetId.
int bcm_field_qualify_NatDstRealmId(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyNatDstRealmId qualifier in the field entry.
int bcm_field_qualify_MplsForwardingLabelBos_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for MplsForwardingLabelBos qualifier.
int bcm_field_qualify_BfdVerFlags_get(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Get match criteria for BFD Version Flags.
int bcm_field_qualify_GpePktVersionZero_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Retreive Gpe version zero packet qualification from a field entry.
int bcm_field_qualify_HiGigOffloadEngineClassificationTag(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Set match criteria for bcmFieldQualifyHiGigOffloadEngineClassificationTag qualifier in the field entr...
int bcm_field_qualify_PreemptablePacket(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyPreemptablePacket qualifier in the field entry.
int bcm_field_flush_entry_get(int unit, uint32 flags, bcm_field_group_t fg_id, int entry_id, bcm_field_flush_entry_info_t *flush_entry_info)
Gets the a single flush machine entry (rule and action) for a specific field group.
int bcm_field_qualify_VxlanPacket_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyVxlanPacket qualifier from the field entry.
int bcm_field_qualify_StaggeredDirectValue(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for bcmFieldQualifyStaggeredDirectValue.
int bcm_field_qualify_DoNotModify(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on packet marked as donot modify forwarding header.
int bcm_field_qualify_SrcIp6ClassLower_get(int unit, bcm_field_entry_t entry, bcm_class_t *data, bcm_class_t *mask)
Get match criteria for bcmFieldQualifySrcIp6ClassLower qualifier from the field entry.
int bcm_field_qualify_IfaHopCount_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get value for bcmFieldQualifyIfaHopCount qualifier from the field entry.
int bcm_field_presel_get(int unit, uint32 flags, bcm_field_presel_entry_id_t *entry_id, bcm_field_presel_entry_data_t *entry_data)
Set a preselector entity information.
int bcm_field_qualify_MacSecTagPresent(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify the MACSEC tagged packets.
int bcm_field_qualify_InnerSrcIp6(int unit, bcm_field_entry_t entry, bcm_ip6_t data, bcm_ip6_t mask)
bcm_field_qualify_InnerSrcIp6
enum bcm_field_app_db_e bcm_field_app_db_t
int bcm_field_qualify_OuterPriTaggedPkt_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get to match on outer priority tagged packet qualification from a field entry.
endcode The flags fields in any of the L3 structures previously defined may take on values which are the logical OR of one or more of the following flags Each individual API function description indicates which flags are pertinent and their associated meanings< table >< caption > BCM Layer Flags</caption >< tr >< th > Name</th >< th > Purpose</th ></tr >< tr >< td > BCM_L3_L2ONLY</td >< td > L2 switch only on interface</td ></tr >< tr >< td > BCM_L3_UNTAG</td >< td > Packet goes out untagged</td ></tr >< tr >< td > BCM_L3_S_HIT</td >< td > Source IP addr match</td ></tr >< tr >< td > BCM_L3_D_HIT</td >< td > Destination IP addr match</td ></tr >< tr >< td > BCM_L3_HIT</td >< td > Source or destination IP address match</td ></tr >< tr >< td > BCM_L3_HIT_CLEAR</td >< td > Clear HIT bit</td ></tr >< tr >< td > BCM_L3_ADD_TO_ARL</td >< td > Add intf address MAC to ARL</td ></tr >< tr >< td > BCM_L3_WITH_ID</td >< td > Request a specific ID number in a create call</td ></tr >< tr >< td > BCM_L3_NEGATE</td >< td > Negate a condition such as L3 interface match</td ></tr >< tr >< td > BCM_L3_INGRESS_ONLY</td >< td > Configure ingress objects only</td ></tr >< tr >< td > BCM_L3_REPLACE</td >< td > Replace existing entry
Definition: l3.dox:1357
int bcm_field_qualify_HiGigDstTrunkId(int unit, bcm_field_entry_t entry, bcm_trunk_t data, bcm_trunk_t mask)
Set match criteria for bcmFieldQualifyHiGigDstTrunkId qualifier in the field entry.
int bcm_field_qualify_SrcVlanGport_get(int unit, bcm_field_entry_t entry, bcm_gport_t *vlan_port_id)
Get match criteria for bcmFieldQualifySrcVlanGport qualifier from the field entry.
int bcm_field_qualify_OverlayIpv4OptionHdrType(int unit, bcm_field_entry_t entry, bcm_field_ip_option_hdr_type_t type)
API to add IPv4 option header type of a tunnel terminated packet to a field entry for qualification.
int bcm_field_qualify_InnerDosAttackEvents_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyInnerDosAttackEvents qualifier from the field entry.
COMPILER_UINT64 uint64
Definition: types.h:53
int bcm_field_qualify_MplsLabel4Bos_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyMplsLabel4Bos qualifier from the field entry.
int bcm_field_qualify_SrcTMPort_get(int unit, bcm_field_entry_t entry, bcm_port_t *data_port, bcm_port_t *mask_port)
Get match criteria for bcmFieldQualifySrcTMPort qualifier from the field entry.
struct bcm_field_CopyToCpu_config_s bcm_field_CopyToCpu_config_t
int bcm_field_qualify_BypassFilter_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for BypassFilter qualifier (8-bits).
int bcm_field_qualify_TcpHeaderSize(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_TcpHeaderSize
int bcm_field_qualify_InVPort(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_InVPort
int bcm_field_qualify_GenevePktVersionZero_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Retreive Geneve version zero packet qualification from a field entry.
int bcm_field_qualify_TrillMultiDestination_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for TrillMultiDestination qualifier.
enum bcm_field_header_format_extension_e bcm_field_header_format_extension_t
int bcm_field_qualify_DoNotModify_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyDoNotModify qualifier from the field entry.
int bcm_field_qualify_OutVPort32_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyOutVPort qualifier from the field entry (32-bits).
enum bcm_field_pkt_misc_ctrl_e bcm_field_pkt_misc_ctrl_t
endcode< table >< caption > BCM L3 ECMP Flags</caption >< tr >< th > Name</th >< th > Purpose</th ></tr >< tr >< td > BCM_L3_ECMP_DYNAMIC_LOAD_DECREASE_RESET</td >< td > If historical member load is reset to the instantaneous member load if the latter is smaller</td ></tr >< tr >< td > BCM_L3_ECMP_DYNAMIC_EXPECTED_LOAD_DECREASE_RESET</td >< td > If historical expected member load is reset to the instantaneous expected member load if the latter is smaller</td ></tr >< tr >< td > BCM_L3_ECMP_PATH_NO_SORTING</td >< td > If the members of the ECMP group won t be sorted Once an ECMP group has been adding members into or removing members from the ECMP group will follow the attribute of the group regardless of whether the flag is set in the parameter On device such as this flag is always set when Resilient Hashing is configured for the ECMP group so that the RH set in the ECMP table is randomly programmed</td ></tr >< tr >< td > BCM_L3_ECMP_OVERLAY</td >< td > If the ECMP group will be programmed at ECMP Level in devices supporting Hierarchical ECMP feature</td ></tr >< tr >< td > BCM_L3_ECMP_UNDERLAY</td >< td > If the ECMP group will be programmed at ECMP Level in devices supporting Hierarchical ECMP feature</td ></tr >< tr >< td > BCM_L3_ECMP_WEIGHTED</td >< td > If this is a Weighted Cost Multi Path group that supports large member counts Valid member count values and</td ></tr >< tr >< td > BCM_L3_ECMP_LARGE_TABLE</td >< td > If selected a large members group table is used for the resilient hashing for better member distribution</td ></tr >< tr >< td > BCM_L3_ECMP_EXTENDED</td >< td > Indicate ECMP extended range(32k to 40k values).</td ></tr >< tr >< td >BCM_L3_ECMP_MEMBER_WEIGHTED</td >< td >If set
enum bcm_field_system_header_profile_e bcm_field_system_header_profile_t
int bcm_field_qualify_HiGigVpPreserveFlags(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyHiGigVpPreserveFlags qualifier in the field entry.
enum bcm_field_oam_drop_mep_type_e bcm_field_oam_drop_mep_type_t
int bcm_field_qualify_ExactMatchHitStatus_get(int unit, bcm_field_entry_t entry, int group_pri, uint8 *data, uint8 *mask)
Get match criteria for ExactMatchHitStatus qualifier.
int bcm_field_qualify_PtpReserved1(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for PTP Rserved1 in the field entry.
int bcm_field_qualify_InnerL2MacInfo_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get value for bcmFieldQualifyInnerL2MacInfo qualifier from the field entry.
int bcm_field_range_group_create(int unit, bcm_field_range_t *range, uint32 flags, bcm_l4_port_t min, bcm_l4_port_t max, bcm_if_group_t group)
Allocate a range checker with specified configuration associated with an interface group.
int bcm_field_qualify_InterfaceIngressKeySelectClassPort_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyInterfaceIngressKeySelectClassPort qualifier in the field entry...
int bcm_field_qualify_L2EgressInterface_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get value for bcmFieldQualifyL2EgressInterface qualifier from the field entry.
bcm_field_LoopbackType_e
Definition: field.h:5148
int bcm_field_qualify_SrcPortSRRoleInterlink_get(int unit, bcm_field_entry_t entry, uint8 *data)
Get match criteria for bcmFieldQualifySrcPortSRRoleInterlink.
int bcm_field_hints_create(int unit, bcm_field_hintid_t *hint_id)
Generate a hint id.
int bcm_field_qualify_ISid(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for ISid qualifier.
int bcm_field_qualify_ExternalHit2(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyExternalHit2 qualifier in the field entry.
int bcm_field_qualify_SRError(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for bcmFieldQualifySRError.
int bcm_field_qualify_Rtag7AHashUpper(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Set match criteria for Rtag7AHashUpper qualifier.
bcm_field_presel_group_t presel_group
Definition: field.h:9255
int bcm_field_qualify_OuterVlanCfi_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyOuterVlanCfi qualifier from the field entry.
int bcm_field_qualify_OuterL5PayloadByte2_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyOuterL5PayloadByte2 qualifier from the field entry.
int bcm_field_qualify_TunnelPayloadSrcMac_get(int unit, bcm_field_entry_t entry, bcm_mac_t *data, bcm_mac_t *mask)
Get match criteria for bcmFieldQualifyTunnelPayloadSrcMac qualifier from the field entry.
int bcm_field_qualify_PacketStatus(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
To qualify on packet status.
int bcm_field_qualify_DstGport_get(int unit, bcm_field_entry_t entry, bcm_gport_t *port_id)
Get match criteria for DstGport qualifier.
int bcm_field_qualify_GroupClass(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for bcmFieldQualifyGroupClass qualifier in the field entry.
int bcm_field_qualify_MplsForwardingLabelId(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for MplsForwardingLabelId qualifier.
int bcm_field_qualify_SrcClassL3(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
bcm_field_qualify_SrcClassL3
int bcm_field_data_qualifier_multi_get(int unit, int qual_size, int *qual_array, int *qual_count)
Return an array of IDs of defined data qualifiers.
enum bcm_field_IntHdr_Type_e bcm_field_IntHdr_Type_t
uint32 value[BCM_FIELD_QUAL_WIDTH_IN_WORDS]
Definition: field.h:39033
struct bcm_field_context_payload_info_s bcm_field_context_payload_info_t
bcm_port_t port
Definition: l3.dox:833
int bcm_field_qualify_LookupClassField(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
To qualify on class field provided by FP lookup stage.
int bcm_field_qualify_UdfClass_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyUdfClass qualifier in the field entry.
int bcm_field_qualify_HeaderFormatSet_get(int unit, bcm_field_entry_t entry, bcm_field_header_format_set_t *header_format_set)
Get matching header format set.
int bcm_field_group_flush(int unit, bcm_field_group_t group)
Destroys field entries in the given group (both software object and the actual hardware entry) before...
int bcm_field_qualify_TunnelPayloadIpProtocol_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyTunnelPayloadIpProtocol qualifier from the field entry.
int bcm_field_qualify_CompressionSrcHit_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for CompressionSrcHit qualifier.
int bcm_field_qualify_InnerVlanPri(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyInnerVlanPri qualifier in the field entry.
int bcm_field_qualify_MplsForwardingLabelAction32_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for MplsForwardingLabelAction qualifier (32 bits).
int bcm_field_qualify_GpePktVersionZero(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Add to match on Gpe version 0 packet qualification to a field entry.
int bcm_field_qualifier_value_map(int unit, bcm_field_stage_t stage, bcm_field_qualify_t bcm_qual, uint32 bcm_value[BCM_FIELD_QUAL_WIDTH_IN_WORDS], uint32 hw_value[BCM_FIELD_QUAL_WIDTH_IN_WORDS])
Maps the bcm value of a given qualifier in a given stage to the correspondig HW value....
int bcm_field_qualify_MplsForwardingLabelAction32(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for MplsForwardingLabelAction qualifier (32 bits).
int bcm_field_qualify_L2GreProtocolType_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get match criteria for L2GreProtocolType qualifier.
bcm_field_action_t action
Definition: field.h:9334
int bcm_field_qualify_TrillEgressRbridgeHit(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for TrillEgressRbridgeHit qualifier.
int bcm_field_qualify_L3SrcMiscClassId_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyL3SrcMiscClassId from a field entry.
int bcm_field_ace_format_info_get(int unit, bcm_field_ace_format_t ace_format_id, bcm_field_ace_format_info_t *ace_format_info)
Get the information about a specific ACE format.
int bcm_field_qualify_MimVfiHit_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for MimVfiHit qualifier.
enum bcm_field_urpf_mode_e bcm_field_urpf_mode_t
int bcm_field_qualify_L2DstMulticastHit(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyL2DstMulticastHit.
struct bcm_field_destination_action_s bcm_field_destination_action_t
int bcm_field_qualify_InPort(int unit, bcm_field_entry_t entry, bcm_port_t data, bcm_port_t mask)
bcm_field_qualify_InPort
int bcm_field_qualify_EgressTunnelIpHeaderDscp_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for EgressTunnelIpHeaderDscp qualifier.
int bcm_field_qualify_OverlayL2PktType(int unit, bcm_field_entry_t entry, bcm_field_l2_pkt_type_t type)
API to add Overlay L2 Packet type of a tunnel terminated packet to a field entry for qualification.
void bcm_field_data_ip_protocol_t_init(bcm_field_data_ip_protocol_t *ip_protocol)
Initialize the bcm_field_data_ip_protocol_s structure.
int bcm_field_qualify_IngressL2InterfaceFlexDigestCtrlIdA_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyIngressL2InterfaceFlexDigestCtrlIdA qualifier from the field entry.
bcm_field_context_key_info_t key_info
Definition: field.h:39493
int bcm_field_qualify_FibreChanSrcIdClassUpper(int unit, bcm_field_entry_t entry, bcm_class_t data, bcm_class_t mask)
Configure match criteria for bcmFieldQualifyFibreChanSrcIdClassUpper qualifier from the field entry.
int bcm_field_qualify_MplsBos_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for MplsBos qualifier.
int(* bcm_field_destination_entry_traverse_cb)(int unit, bcm_field_destination_match_t *match, bcm_field_destination_action_t *action, void *user_data)
Definition: field.h:47235
int bcm_field_tcam_bank_evacuate(int unit, uint32 flags, bcm_field_tcam_bank_info_t *evac_info)
Evacuates the given fg_id OR pp_app from the bank IDs that are given in evac_info struct....
int nof_entry_actions
Definition: field.h:39054
int bcm_field_compression_index_mapped_set(int unit, bcm_field_compression_map_type_t type, uint16 index, bcm_pbmp_t ports, uint16 val, uint16 map_val)
To set the remapped compression values for a particular value at a particular index.
int(* bcm_field_group_traverse_cb)(int unit, bcm_field_group_t group, void *user_data)
Definition: field.h:10144
int bcm_field_stat_counter_set(int unit, uint32 stat_id, bcm_field_stat_t stat, uint32 num_entries, uint32 *counter_indexes, bcm_stat_value_t *counter_values)
Set counter statistic values for a field entity.
int bcm_field_qualify_OamMeterDisable(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for OamMeterDisable qualifier.
int bcm_field_qualify_Vpn_get(int unit, bcm_field_entry_t entry, bcm_vpn_t *data, bcm_vpn_t *mask)
To get qualified inputs on VPN.
int bcm_field_qualify_OamSubtype(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for OamSubtype qualifier.
void bcm_field_context_info_t_init(bcm_field_context_info_t *context_info)
Initialize the bcm_field_context_info_t structure.
int bcm_field_qualify_EthernetOamHeaderBits0_31_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for EthernetOamHeaderBits0_31 qualifier.
uint8 name[BCM_FIELD_MAX_SHORT_NAME_LEN]
Definition: field.h:39013
bcm_field_IpProtocolCommon_e
Definition: field.h:5417
int bcm_field_stage_info_get(int unit, bcm_field_stage_t stage, bcm_field_stage_info_t *info)
Get per-stage field information.
int bcm_field_qualify_IpMulticastCompatible(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for bcmFieldQualifyIpMulticastCompatible.
int bcm_field_qualify_CascadedKeyValue_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for CascadedKeyValue qualifier.
int bcm_field_qualify_IsUcastCosQueue_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get qualified inputs if packet is stored in unicast Cos Queue.
int bcm_field_qualify_TunnelPayloadOuterVlanPri_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyTunnelPayloadOuterVlanPri qualifier from the field entry.
int bcm_field_qualify_DstVlanGport_get(int unit, bcm_field_entry_t entry, bcm_gport_t *vlan_port_id)
Get match criteria for bcmFieldQualifyDstVlanGport qualifier from the field entry.
int bcm_field_qualify_SRFlowId_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifySRFlowId.
int bcm_field_qualify_InnerDstIp_get(int unit, bcm_field_entry_t entry, bcm_ip_t *data, bcm_ip_t *mask)
Get match criteria for bcmFieldQualifyInnerDstIp qualifier from the field entry.
int bcm_field_qualify_InterfaceClassL2(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
bcm_field_qualify_InterfaceClassL2
int bcm_field_stat_detach(int unit, uint32 stat_id)
Detach counters entries to a field group.
enum bcm_field_IpType_e bcm_field_IpType_t
int bcm_field_qualify_MirrorPktType_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get value for bcmFieldQualifyMirrorPktType qualifier from the field entry.
int bcm_field_qualify_L5PayloadByte1(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on L5 Payload byte 1.
int bcm_field_qualify_DstMultipathLevel1_get(int unit, bcm_field_entry_t entry, bcm_if_t *data, bcm_if_t *mask)
Get match criteria for Level 1 ECMP groups from a field entry.
int bcm_field_qualify_MplsForwardingLabelAction(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for MplsForwardingLabelAction qualifier(8 bits).
< table >< tr >< th > API</th >< th > Brief</th ></tr >< tr >< td > int bcm_stat_egress_receive_tm_pointer_format_t *pointer_format</td >< td > Get the format of the counter pointer that is sent from egress receive tm</td ></tr >< tr >< td > int bcm_stat_control_t type
Definition: stat.dox:3035
bcm_field_qualify_t qual
Definition: field.h:27176
int bcm_field_qualify_FibreChanVFTVsanId(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Set match criteria for bcmFieldQualifyFibreChanVFTVsanId qualifier in the field entry.
int bcm_field_qualify_Container(int unit, bcm_field_entry_t entry, uint64 data, uint64 mask)
Set match criteria for Container qualifier.
int bcm_field_qualify_MirrorOnDrop_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyMirrorOnDrop qualifier from the field entry.
int bcm_field_qualify_EgressClassTrill_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get match criteria for EgressClassTrill qualifier.
int bcm_field_qualify_L2GreSrcIpHit_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for L2GreSrcIpHit qualifier.
int bcm_field_context_hash_create(int unit, uint32 flags, bcm_field_stage_t stage, bcm_field_context_t context_id, bcm_field_context_hash_info_t *hash_info)
This function is used to create, allocate all resources and configure HASH key which is used to creat...
int bcm_field_qualify_OutPort_get(int unit, bcm_field_entry_t entry, bcm_port_t *data, bcm_port_t *mask)
Get match criteria for bcmFieldQualifyOutPort qualifier from the field entry.
int bcm_field_stage_qset_get(int unit, bcm_field_stage_t stage, uint8 presel, bcm_field_qset_t *qset)
List the qualifiers supported for a given stage.
int bcm_field_entry_config_create(int unit, bcm_field_entry_config_t *entry_config)
Create a field entry based on specified configuration.
int bcm_field_qualify_L3DestHostHit(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_L3DestHostHit
int bcm_field_qualify_FibreChanSrcIdClassLower_get(int unit, bcm_field_entry_t entry, bcm_class_t *data, bcm_class_t *mask)
Get match criteria for bcmFieldQualifyFibreChanSrcIdClassLower qualifier from the field entry.
int bcm_field_qualify_HiGigTrafficClass(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyHigigTrafficClass qualifier in the field entry.
int bcm_field_qualify_HiGigDstTrunk_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyHiGigDstTrunk qualifier from the field entry.
int bcm_field_qualify_MacSecControlPkt_get(int unit, bcm_field_entry_t entry, bcm_field_macsec_encrypt_decrypt_pkt_t *data)
To get the qualified inputs on the MACSEC control packet.
int bcm_field_qualify_SRSrcNodeIsSan(int unit, bcm_field_entry_t entry, uint8 data)
Set match criteria for bcmFieldQualifySRSrcNodeIsSan.
int bcm_field_qualify_FibreChanSrcIdClassUpper_get(int unit, bcm_field_entry_t entry, bcm_class_t *data, bcm_class_t *mask)
Get match criteria for bcmFieldQualifyFibreChanSrcIdClassUpper qualifier from the field entry.
int bcm_field_qualify_MirrorEgressDisabled(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for MirrorEgressDisabled qualifier.
int bcm_field_group_traverse(int unit, bcm_field_group_traverse_cb callback, void *user_data)
Traverse all the fp groups on the device, calling a specified callback for each valid group.
void bcm_field_qset_t_init(bcm_field_qset_t *qset)
Initialize the Field Qualifier Set structure.
int bcm_field_qualify_TcpSequenceZero_get(int unit, bcm_field_entry_t entry, uint32 *flag)
Get match criteria for bcmFieldQualifyTcpSequenceZero qualifier from the field entry.
int bcm_field_qualifier_destroy(int unit, bcm_field_qualify_t qual_id)
Destroys an existing user qualifier.
int bcm_field_qualify_TunnelTerminatedHit(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for TunnelTerminatedHit qualifier.
int bcm_field_qualify_SRSupervisionType_get(int unit, bcm_field_entry_t entry, bcm_field_sr_supervision_type_t *type)
Get match criteria for bcmFieldQualifySRSupervisionType.
bcm_field_action_t bcm_action
Definition: field.h:8444
void bcm_field_redirect_config_t_init(bcm_field_redirect_config_t *redirect_config)
Initialize the Redirect Field Config structure.
bcm_field_action_t type
Definition: field.h:50119
int bcm_field_qualify_InVPort_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyInVPort qualifier from the field entry (8-bits).
void bcm_field_oam_stat_action_t_init(bcm_field_oam_stat_action_t *oam_action)
Initialize Field Oam Stat Action Structure.
int bcm_field_qualify_MacSecTagPresent_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
To get the qualified inputs on the MACSEC tagged packets.
int bcm_field_qualify_SystemPortBitmap_get(int unit, bcm_field_entry_t entry, bcm_pbmp_t *data, bcm_pbmp_t *mask)
Get match criteria for SystemPortBitmap qualifier from the field entry.
uint32 value[BCM_FIELD_QUAL_WIDTH_IN_WORDS]
Definition: field.h:50108
int bcm_field_qualify_DownMepSatTerminated_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for Rx Down Mep SAT terminated hit status.
int bcm_field_qualify_TrillEgressRbridge(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for TrillEgressRbridge qualifier.
bcm_field_context_hash_function_t hash_function
Definition: field.h:39504
int bcm_field_qualify_HiGigOffloadEngineDscpNew(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyHiGigOffloadEngineDscpNew qualifier in the field entry.
int bcm_field_qualify_FlowtrackerExportQueueFull_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
To get the qualified inputs on the event whether Flowtracker export queue is full.
struct bcm_field_entry_config_s bcm_field_entry_config_t
int bcm_field_qualify_DstMimGports(int unit, bcm_field_entry_t entry, bcm_gport_t mim_port_id, bcm_gport_t mim_port_mask)
bcm_field_qualify_DstMimGports
int bcm_field_qualify_FibreChanVFTPri_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyFibreChanVFTPri qualifier from the field entry.
enum bcm_field_egress_flow_control_e bcm_field_egress_flow_control_t
int bcm_field_qualify_Fhei_get(int unit, bcm_field_entry_t entry, uint64 *data, uint64 *mask)
Get match criteria for Fhei qualifier.
int bcm_field_qualify_IpOptionHdrType_get(int unit, bcm_field_entry_t entry, bcm_field_ip_option_hdr_type_t *type)
API to retrieve IP option header type associated to a given field entry.
int bcm_field_hints_delete_all(int unit, bcm_field_hintid_t hint_id)
Remove all hints from the hint id.
bcm_field_context_t cascaded_from
Definition: field.h:38559
int bcm_field_qualify_PktInnerDstAddrType(int unit, bcm_field_entry_t entry, uint32 dst_addr_type)
Configure Match criteria for bcmFieldQualifyPktInnerDstAddrType qualifier for the field entry.
int bcm_field_qualify_MplsOamGALExposed(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyMplsOamGALExposed.
uint32 bcm_field_range_t
Definition: field.h:5750
int bcm_field_qualify_IngressClassField_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyIngressClassField qualifier in the field entry.
int bcm_field_qualify_OuterVlanId_get(int unit, bcm_field_entry_t entry, bcm_vlan_t *data, bcm_vlan_t *mask)
Get match criteria for bcmFieldQualifyOuterVlanId qualifier from the field entry.
enum bcm_field_cos_map_select_e bcm_field_cos_map_select_t
int bcm_field_qualify_L3Check_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get value for bcmFieldQualifyL3Check qualifier from the field entry.
int bcm_field_qualify_MimlPkt_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyMimlPkt qualifier from the field entry.
int bcm_field_qualify_TunnelHeaderIpProtocol_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyTunnelHeaderIpProtocol qualifier from the field entry.
int bcm_field_qualify_FlowtrackerGroupId_get(int unit, bcm_field_entry_t entry, int *data, int *mask)
To get the qualified inputs on Flow group id assigned(bcmFieldActionFlowtrackerGroupId) by FlowTracke...
int bcm_field_qualify_RxTrapStrength_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for RxTrapStrength qualifier.
SHR_BITDCL w[_SHR_BITDCLSIZE(bcmFieldActionCount)]
Definition: field.h:8464
bcm_field_qualify_t qual_types[BCM_FIELD_NUMBER_OF_QUALS_PER_GROUP]
Definition: field.h:37926
int bcm_field_qualify_OpaqueObject4_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
To get the qualified inputs on Opaque Object4 which was assigned by Flex modules for example NSH,...
int bcm_field_qualify_MixedSrcClassId(int unit, bcm_field_entry_t entry, bcm_pbmp_t pbmp, bcm_field_src_class_t data, bcm_field_src_class_t mask)
Configure match criteria for bcmFieldQualifyMixedSrcClassId qualifier for the preselection field entr...
int bcm_field_qualify_DstWlanGport_get(int unit, bcm_field_entry_t entry, bcm_gport_t *wlan_port_id)
Get match criteria for bcmFieldQualifyDstWlanGport qualifier from the field entry.
int bcm_field_qualify_CapwapPayloadInnerVlanId(int unit, bcm_field_entry_t entry, bcm_vlan_t data, bcm_vlan_t mask)
Set match criteria for bcmFieldQualifyCapwapPayloadInnerVlanId qualifier in the field entry.
enum bcm_field_ace_context_e bcm_field_ace_context_t
int bcm_field_qualify_ETag_get(int unit, bcm_field_entry_t entry, uint64 *data, uint64 *mask)
Get match criteria for bcmFieldQualifyETag qualifier from the field entry.
int bcm_field_stat_counter_sync_get(int unit, uint32 stat_id, bcm_field_stat_t stat, uint32 num_entries, uint32 *counter_indexes, bcm_stat_value_t *counter_values)
Force an immediate counter update and retrieve statistics value for a field entity.
int bcm_field_qualify_GenericAssociatedChannelLabelValid_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for GenericAssociatedChannelLabelValid qualifier.
bcmFieldHeaderFormatExtensionMplsL4IPV6isH4</td ></tr >< tr >< td > HeaderFormatExtensionMplsL4IPV4isH5</td >< td > L4 stands for UDP TCP Hit is marked when parser speculates following the next protocol is Ethernet followed by L4 of following the next protocol is Ethernet followed by L4 of remove or test individual qualifier bits in the qualifier set q Add a bit to a qualifier set q Test if a bit is set in a qualifier set On certain actions are collected into action and test individual actions within the action set a Add an action to an action set a Test if an action is included in an aset The following macro defines the maximum width of all actions in field processor module BCM_FIELD_ASET_WIDTH_MAX maximum value to indicate the total width of all actions In certain where it is possible to specify more than a single header header format sets are used This allows multiple header formats to be specified anchor fp_bcm_field_header_format_set_t hf Add a header hf Add a header hf Remove a header format from a bcm_field_header_format_set_t hf Test whether a header format is included in a bcm_field_header_format_set_t length Define the parameters for the action in a Direct mode Field Qualifier and bcmFieldQualifyStageEgressSecurity are special qualifiers to specify the field processor where the field group should be created Only one stage should be added to the qset to create a group If the qset used does not specify any the API creates the group in ingress field processor bcmFieldQualifyStageExternal forces group to an external TCAM bcmFieldQualifyStageIngressExactMatch forces group to an exact match stage In Firebolt2 to qualify on L3 packet information during egress stage of bcmFieldQualifyIp4 Ip6 qualifiers must be present in qualifiers set These qualifiers come to identify type of packet the rule is applied to If packet type is not identified by the qset
Definition: field.dox:5174
int bcm_field_qualify_TrillMultiDestination(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for TrillMultiDestination qualifier.
int bcm_field_qualify_OamHeaderOffset(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for OamHeaderOffset qualifier.
int bcm_field_qualify_L5PayloadByte5(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on L5 Payload byte 5.
int bcm_field_qualify_KeyGenVar(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for bcmFieldQualifyKeyGenVar.
int bcm_field_qualify_RoceBthDstQueuePair_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyRoceBthDstQueuePair qualifier in the field entry.
int bcm_field_qualify_MimlInnerTag_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyMimlInnerTag_get qualifier from the field entry.
bcm_field_flush_entry_payload_t payload
Definition: field.h:50184
int bcm_field_qualify_L4PortRangeCheck_get(int unit, bcm_field_entry_t entry, int max_count, bcm_field_range_t *range, int *invert, int *count)
Get match criteria for L4PortRangeCheck qualifier.
int bcm_field_qualify_ForwardHdrSrcMac(int unit, bcm_field_entry_t entry, bcm_mac_t data, bcm_mac_t mask)
Set match criteria for bcmFieldQualifyForwardHdrSrcMac qualifier from the field entry.
int bcm_field_qualify_FibreChanType(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyFibreChanType qualifier in the field entry.
int bcm_field_qualify_IncomingIpIfClass(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for IncomingIpIfClass qualifier.
int bcm_field_qualify_IEEE1588HeaderOffset(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for bcm_field_qualify_IEEE1588HeaderOffset.
int bcm_field_qualify_IpMulticastCompatible_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Set match criteria for bcmFieldQualifyIpMulticastCompatible_get.
int bcm_field_qualify_MplsOamHeaderBits0_31_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for MplsOamHeaderBits0_31 qualifier.
bcm_field_drop_reason_e
Definition: field.h:47643
int bcm_field_action_config_info_add(int unit, bcm_field_entry_t entry, bcm_field_action_t action, bcm_field_action_params_t *params, bcm_field_action_match_config_t *match_config)
Add an action to a field entry.
int bcm_field_source_class_mode_set(int unit, bcm_field_stage_t stage, bcm_pbmp_t pbmp, bcm_field_src_class_mode_t mode)
Configures the mixed Source Class ID generation mode for Ingress and Exact Match Search stages.
int bcm_field_qualify_TranslatedInnerVlanId(int unit, bcm_field_entry_t entry, bcm_vlan_t data, bcm_vlan_t mask)
Set match criteria for bcmFieldQualifyTranslatedInnerVlanId qualifier in the field entry.
int bcm_field_group_expansion_enable_set(int unit, bcm_field_group_t group, int enable)
Enable or Disable auto expansion of entries for a group.
uint32 bcm_flowtracker_check_t
Definition: flowtracker.h:801
int bcm_field_group_config_extension_create(int unit, bcm_field_group_config_extension_t *group_config)
Create a field group with extension specific attributes.
int bcm_field_entry_copy(int unit, bcm_field_entry_t src_entry, bcm_field_entry_t *dst_entry)
Create a copy of an existing field entry.
enum bcm_field_qualifier_class_e bcm_field_qualifier_class_t
int bcm_field_qualify_MyStationHit(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_MyStationHit
int bcm_field_qualify_PacketLength(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Configure match criteria for bcmFieldQualifyPacketLength qualifier from the field entry.
int bcm_field_qualify_L2PktType(int unit, bcm_field_entry_t entry, bcm_field_l2_pkt_type_t type)
API to add L2 Packet type to a field entry for qualification.
int bcm_field_qualify_VlanTranslateClassId(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
To qualify on Class identifier assigned by Vlan translate tables.
int bcm_field_qualify_OamStampOffset_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for OamStampOffset qualifier.
int bcm_field_qualify_InnerL2MacInfo(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
To qualify on inner Ip Information.
enum bcm_field_pkt_type_e bcm_field_pkt_type_t
int bcm_field_qualify_InDscpExp(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_InDscpExp
int bcm_field_qset_id_multi_delete(int unit, bcm_field_qualify_t qualifier, int num_objects, int *object_list, bcm_field_qset_t *qset)
Delete qualifier objects to field group qset.
enum bcm_field_macsec_pkt_type_e bcm_field_macsec_pkt_type_t
bcm_field_stat_oam_lm_index_e
Definition: field.h:448
enum bcm_field_timestamp_transmit_pkt_type_e bcm_field_timestamp_transmit_pkt_type_t
uint32 bcm_ip_t
Definition: types.h:93
int bcm_field_qualify_PacketIsIEEE1588_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcm_field_qualify_PacketIsIEEE1588_get.
int bcm_field_action_config_add(int unit, bcm_field_entry_t entry, bcm_field_action_t action, int core_config_arr_len, bcm_field_action_core_config_t *core_config_arr)
Add an action to a field entry.
int bcm_field_qualify_TcpAckNum_get(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Get match criteria for TCP Ack number.
int bcm_field_qualify_CustomHeaderPkt_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyCustomHeaderPkt qualifier from the field entry.
bcm_field_context_param_type_e
Definition: field.h:39930
int bcm_field_qualify_SrcIp_get(int unit, bcm_field_entry_t entry, bcm_ip_t *data, bcm_ip_t *mask)
Get match criteria for bcmFieldQualifySrcIp qualifier from the field entry.
enum bcm_field_IpProtocolCommon_e bcm_field_IpProtocolCommon_t
int bcm_field_qualify_StaggeredValue2_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Set match criteria for bcmFieldQualifyStaggeredValue2_get.
int bcm_field_qualify_TunnelAltL4DstPort(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
To qualify on alternate tunnel l4 destination port.
int bcm_field_qualify_IngressDropMplsOamControl_get(int unit, bcm_field_entry_t entry, bcm_field_oam_drop_mep_type_t *mep_type)
Get match criteria for bcmFieldQualifyIngressDropMplsOamControl qualifier from the field entry.
int bcm_field_qualify_PolicerIntPrio(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for PolicerIntPrio qualifier.
enum bcm_field_context_hash_action_value_e bcm_field_context_hash_action_value_t
int bcm_field_qualify_VxlanHeaderBits8_31(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Qualify Reserved_1 field in Vxlan Header.
int bcm_field_qualify_ForwardingOuterTpid_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get match criteria for bcmFieldQualifyForwardingOuterTpid qualifier from the field entry.
int bcm_field_qualify_SysHdrType_get(int unit, bcm_field_entry_t entry, bcm_field_sys_hdr_type_t *type)
API to retrieve system header type associated to a given field entry.
int bcm_field_qualify_CapwapPayloadDstMac_get(int unit, bcm_field_entry_t entry, bcm_mac_t *data, bcm_mac_t *mask)
Get match criteria for CapwapPayloadDstMac qualifier from the field entry.
int bcm_field_qualify_InnerIp6HopLimit(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_InnerIp6HopLimit
int bcm_field_qualify_TunnelHeaderSip6(int unit, bcm_field_entry_t entry, bcm_ip6_t data, bcm_ip6_t mask)
Set match criteria for bcmFieldQualifyTunnelHeaderSip6 qualifier in the field entry.
int bcm_field_qualify_OuterL5PayloadByte4(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on Outer L5 Payload byte 4.
int bcm_field_qualify_OuterL5PayloadByte1(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on Outer L5 Payload byte 1.
int bcm_field_qualify_DstMultipathLevel2(int unit, bcm_field_entry_t entry, bcm_if_t data, bcm_if_t mask)
Add match criteria for bcmFieldQualifyDstMultipathLevel2.
int bcm_field_action_redirect_config_set(int unit, bcm_field_entry_t entry, bcm_field_redirect_config_t redirect_config)
Configures the Redirect action based on the parameters in Redirect Field Config structure.
int bcm_field_qualify_HiGigForwardingType(int unit, bcm_field_entry_t entry, bcm_field_HiGigForwardingType_t type)
Set match criteria for bcmFieldQualifyHiGigForwardingType qualifier in the field entry.
int bcm_field_qualify_MacSecFlow(int unit, bcm_field_entry_t entry, bcm_field_macsec_flow_t data)
Qualifies on the MACSEC packet flow.
int bcm_field_qualify_L3EgressIntf_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyL3EgressIntf qualifier from the field entry.
int bcm_field_qualify_CapwapPayloadInnerVlanPri(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyCapwapPayloadInnerVlanPri qualifier in the field entry.
bcm_field_context_t context_id
Definition: field.h:37355
int bcm_field_qualify_RxTrapCodeForSnoop(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for RxTrapCodeForSnoop qualifier.
int bcm_field_qualify_CpuQueue(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for CpuQueue qualifier.
int bcm_field_qualify_HiGigOffloadEngineDeferredFlags(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyHiGigOffloadEngineDeferredFlags qualifier in the field entry.
int bcm_field_qualify_udf_get(int unit, bcm_field_entry_t eid, bcm_udf_id_t udf_id, int max_length, uint8 *data, uint8 *mask, int *actual_length)
Get UDF data that the packet configured to match on.
int bcm_field_presel_destroy(int unit, bcm_field_presel_t presel_id)
Destroy a preselection specification.
struct bcm_field_array_n_position_s bcm_field_array_n_position_t
int bcm_field_qualify_TranslatedOuterVlanCfi(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyTranslatedOuterVlanCfi qualifier in the field entry.
int bcm_field_qualify_OuterL5PayloadByte1_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyOuterL5PayloadByte1 qualifier from the field entry.
int bcm_field_qualify_CapwapPayloadSrcMac(int unit, bcm_field_entry_t entry, bcm_mac_t data, bcm_mac_t mask)
Set match criteria for bcmFieldQualifyCapwapPayloadSrcMac qualifier in the field entry.
int bcm_field_qualify_MplsLabel5(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
To qualify on MPLS label5.
int bcm_field_qualify_TunnelTermStatus(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
To qualify on tunnel termination status bits.
int bcm_field_qualify_ExternalValue6_get(int unit, bcm_field_entry_t entry, uint64 *data, uint64 *mask)
Get match criteria for bcmFieldQualifyExternalValue6 qualifier in the field entry.
int bcm_field_qualify_HiGigSrcModuleGport(int unit, bcm_field_entry_t entry, bcm_gport_t port_id, bcm_gport_t port_mask)
Set match criteria for bcmFieldQualifyHiGigSrcModuleGport qualifier in the field entry.
int bcm_field_stage_slice_count_get(int unit, bcm_field_stage_t stage_id, int *slice_count)
The API returns the number of slices in the given stage.
int bcm_field_qualify_HiGigSrcType(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyHiGigSrcType qualifier in the field entry.
struct bcm_field_presel_qualify_data_s bcm_field_presel_qualify_data_t
endcode section generic_apis Generic APIs< table >< tr >< th > API</th >< th > Brief</th ></tr >< tr >< td > int enable</td >< td > Enable disable L3 function without clearing any L3 tables</td ></tr >< tr >< td > bcm_l3_intf_t *intf</td >< td > Create a new L3 interface</td ></tr >< tr >< td > bcm_l3_intf_t *intf</td >< td > Search for L3 interface by MAC address and VLAN</td ></tr >< tr >< td > bcm_l3_intf_t *intf</td >< td > Given the L3 interface return the interface information</td ></tr >< tr >< td > bcm_if_t intf_id</td >< td > Detach counter entries to the given L3 egress interface</td ></tr >< tr >< td > bcm_l3_ingress_t bcm_if_t *intf_id</td >< td > Create L3 Ingress Interface object</td ></tr >< tr >< td > bcm_if_t bcm_l3_ingress_t *ing_intf</td >< td > Get an Ingress Interface object</td ></tr >< tr >< td > bcm_l3_ingress_traverse_cb void *user_data</td >< td > Goes through ingress interface objects table and runs the user callback function at each valid ingress object entry passing back the information for that object</td ></tr >< tr >< td > bcm_if_t intf_id</td >< td > Detach counters entries to the given L3 ingress interface</td ></tr >< tr >< td > bcm_if_t bcm_l3_stat_t stat
Definition: l3.dox:2274
int bcm_field_qualify_FibreChanCSCtl(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyFibreChanCSCtl qualifier in the field entry.
int bcm_field_qualify_MplsControlPkt(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
API to match on MPLS Control Packet (MPLS packet with VCCV_1/2/3/4 and [LSP]/GAL/G-ACH).
int bcm_field_action_copytocpu_config_set(int unit, bcm_field_entry_t entry, bcm_field_CopyToCpu_config_t CopyToCpu_config)
Configures the copy to CPU action based on the parameters in Copy To CPU Field Config structure.
SHR_BITDCL w[_SHR_BITDCLSIZE(BCM_FIELD_QUALIFY_MAX)]
Definition: field.h:5759
int bcm_field_presel_config_set(int unit, bcm_field_presel_t presel_id, bcm_field_presel_config_t *presel_config)
Map a presel id to a name.
int bcm_field_qualify_FibreChanType_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyFibreChanType qualifier from the field entry.
int bcm_field_qualify_TunnelTerminatedHit_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for TunnelTerminatedHit qualifier.
int bcm_field_group_destroy(int unit, bcm_field_group_t group)
Deallocates a field group.
uint32 flags
Definition: field.h:27187
int bcm_field_qualify_MplsLabel5Ttl(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on MPLS label5 ttl value.
void bcm_field_llc_header_t_init(bcm_field_llc_header_t *llc_header)
Initialize Field Qualifier LLC header structure.
int bcm_field_control_get(int unit, bcm_field_control_t control, uint32 *state)
Set or get a field control value.
bcm_field_qualify_attach_info_t qual_info[BCM_FIELD_NUMBER_OF_QUALS_PER_GROUP]
Definition: field.h:38827
int bcm_field_range_get(int unit, bcm_field_range_t range, uint32 *flags, bcm_l4_port_t *min, bcm_l4_port_t *max)
Retrieve parameters associated with an existing range checker.
int bcm_field_qualify_RouterAlertLabelValid_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for RouterAlertLabelValid qualifier.
int bcm_field_qualify_OuterL5PayloadByte6(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on Outer L5 Payload byte 6.
int bcm_field_qualify_LearnVlan_get(int unit, bcm_field_entry_t entry, bcm_vlan_t *data, bcm_vlan_t *mask)
Get match criteria for LearnVlan qualifier.
int bcm_field_qualify_Tos_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyTos qualifier from the field entry.
int bcm_field_qualify_LoopbackType_get(int unit, bcm_field_entry_t entry, bcm_field_LoopbackType_t *loopback_type)
Get loopback type field qualification from a field entry.
int bcm_field_qualify_IntMetadataHdrType(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for IntMetadataHdrType qualifier.
int bcm_field_entry_create(int unit, bcm_field_group_t group, bcm_field_entry_t *entry)
Create a blank field entry.
int bcm_field_qualify_L2LearnCommands(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
To qualify on L2 learning commands.
int bcm_field_qualify_HiGigSrcGport_get(int unit, bcm_field_entry_t entry, bcm_gport_t *port_id, bcm_gport_t *port_mask)
Get match criteria for bcmFieldQualifyHiGigSrcGport qualifier from the field entry.
bcm_field_MplsOam_Control_pktType_e
Definition: field.h:24891
int bcm_field_entry_flexctr_detach(int unit, bcm_field_entry_t entry, bcm_field_flexctr_config_t *flexctr_cfg)
Detach the flexctr for a given field entry.
int bcm_field_qualify_IntMetadataHdrType_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for IntMetadataHdrType qualifier.
bcm_field_action_t type
Definition: field.h:39021
int bcm_field_hints_destroy(int unit, bcm_field_hintid_t hint_id)
Remove all hints from the hint id.
int bcm_field_qualify_IpmcValue(int unit, bcm_field_entry_t entry, uint64 data, uint64 mask)
Set match criteria for IpmcValue qualifier.
uint8 name[BCM_FIELD_MAX_SHORT_NAME_LEN]
Definition: field.h:38998
int bcm_field_qualify_DstL3EgressNextHops_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyDstL3EgressNextHops qualifier from the field entry.
bcm_field_action_t action_type
Definition: field.h:40032
int bcm_field_qualify_MplsForwardingLabelPayload(int unit, bcm_field_entry_t entry, uint64 data, uint64 mask)
Set match criteria for MplsForwardingLabelPayload qualifier.
uint8 net_id
Definition: tsn.dox:282
int bcm_field_qualify_SrcMplsGports_get(int unit, bcm_field_entry_t entry, bcm_gport_t *mpls_port_id, bcm_gport_t *mpls_port_mask)
Get match criteria for bcmFieldQualifySrcMplsGports qualifier from the field entry.
int bcm_field_qualify_IgmpType(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
To qualify on packet Igmp type value.
void bcm_field_entry_info_t_init(bcm_field_entry_info_t *entry_info)
Initialize the bcm_field_entry_info_t structure.
int bcm_field_qualify_FlowtrackerAggregateClass(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Qualify on Flowtracker Aggregate Class.
int bcm_field_qualify_IngressL2InterfaceFlexDigestCtrlIdB_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyIngressL2InterfaceFlexDigestCtrlIdB qualifier from the field entry.
int bcm_field_qualify_FlowtrackerGroupFlowExceeded_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
To get the qualified inputs on the event whether flow limit for Flowtracker is exceeded.
struct bcm_field_qualifier_info_create_s bcm_field_qualifier_info_create_t
int bcm_field_qualify_DstMultipathUnderlay(int unit, bcm_field_entry_t entry, bcm_if_t data, bcm_if_t mask)
Add match criteria for bcmFieldQualifyDstMultipathUnderlay.
int bcm_field_qualify_MplsLabel2(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for MplsLabel2 qualifier.
int bcm_field_qualify_FheiSize_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for FheiSize qualifier.
int bcm_field_qualify_InterfaceClassPort_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyInterfaceClassPort qualifier from the field entry.
int bcm_field_qualify_MplsLabel5Ttl_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyMplsLabel5Ttl qualifier from the field entry.
struct bcm_field_presel_config_s bcm_field_presel_config_t
int bcm_field_qualify_GbpPresent_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
To get the qualified inputs on GBP Presence.
int bcm_field_qualify_IpmcV4Pkt_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
API to retrieve IPMC Ipv4 packet qualification from a field entry.
int bcm_field_qualify_RoceVer2Pkt_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyRoceVer2Pkt qualifier in the field entry.
int bcm_field_qualify_TunnelHeaderDip(int unit, bcm_field_entry_t entry, bcm_ip_t data, bcm_ip_t mask)
Set match criteria for bcmFieldQualifyTunnelHeaderDip qualifier in the field entry.
int bcm_field_qualify_StaggeredValue1(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for bcmFieldQualifyStaggeredValue1.
int bcm_field_qualify_DownMepSatTerminated(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria to qualify Rx Down Mep SAT terminated hit status.
bcm_field_compare_operand_e
Definition: field.h:42351
int bcm_field_qualify_IntPriority(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyIntPriority qualifier in the field entry.
void bcm_field_src_class_t_init(bcm_field_src_class_t *src_class)
Initiaize Field Source Class Mode structure.
int bcm_field_qualify_CongestionExperienced_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get qualified inputs on Congestion Experienced Status.
int bcm_field_qualify_OamEgressClassPort_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get match criteria for bcmFieldQualifyOamEgressClassPort.
int bcm_field_qualify_HiGigOffloadEngineVxltStatus(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyHiGigOffloadEngineVxltStatus qualifier in the field entry.
int bcm_field_qualify_RxTrapCode_get(int unit, bcm_field_entry_t entry, bcm_rx_trap_t *data)
Get match criteria for RxTrapCode qualifier.
bcm_field_IntHdr_Type_e
Definition: field.h:49230
int bcm_field_qualify_IfaAttrOpaqData(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Set match criteria for IFA Attribute Opaque data in the field entry.
int bcm_field_qualify_IgmpMaxRespTime_get(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Get match criteria for IGMP Max Response time.
bcm_field_qualify_t type
Definition: field.h:39031
bcm_field_range_type_e
Definition: field.h:40354
int bcm_field_qualify_MimlInnerTag(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for bcmFieldQualifyMimlInnerTag qualifier in the field entry.
int bcm_field_qualify_RoeFrameType(int unit, bcm_field_entry_t entry, bcm_field_roe_frame_type_t data)
Qualifies on Roe frame type set in MPLS entry for a MPLS packet or based on UDP port number for an IP...
int bcm_field_qualify_IfaRequestVector(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
To qualify on IFA metadata header Request vector.
bcm_field_data_offset_base_t offset_base
Definition: field.h:4868
struct bcm_field_presel_set_s bcm_field_presel_set_t
bcm_field_qset_t qset
Definition: field.h:9235
int bcm_field_qualify_NatSrcRealmId_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyNatSrcRealmId qualifier in the field entry.
int bcm_field_qualify_CapwapPayloadL4SrcPort(int unit, bcm_field_entry_t entry, bcm_l4_port_t data, bcm_l4_port_t mask)
bcm_field_qualify_CapwapPayloadL4SrcPort
int bcm_field_qualify_Rtag7AHashLower_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get match criteria for Rtag7AHashLower qualifier.
uint16 src_class_field
Definition: field.h:30577
int bcm_field_entry_t
Definition: types.h:2912
bcm_field_app_db_t pp_app
Definition: field.h:39696
int bcm_field_qualify_DropReason(int unit, bcm_field_entry_t entry, bcm_field_drop_reason_t type)
API to add Drop reason to a field entry for qualification.
int bcm_field_qualify_IngressDropEthernetOamData(int unit, bcm_field_entry_t entry, bcm_field_oam_drop_mep_type_t mep_type)
Set match criteria for bcmFieldQualifyIngressDropEthernetOamData qualifier in the field entry.
int bcm_field_qualify_InterfaceClassVPort_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for InterfaceClassVPort qualifier.
int bcm_field_qualify_L2GreVsid(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for L2GreVsid qualifier.
int bcm_field_qualify_FlexStateResultA1_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get value for bcmFieldQualifyFlexStateResultA1 qualifier from the field entry.
enum bcm_field_context_hash_function_e bcm_field_context_hash_function_t
int bcm_field_qualify_FibreChanDstIdClassMsbNibble(int unit, bcm_field_entry_t entry, bcm_class_t data, bcm_class_t mask)
Configure match criteria for bcmFieldQualifyFibreChanDstIdClassMsbNibble qualifier from the field ent...
enum bcm_field_oam_type_e bcm_field_oam_type_t
int bcm_field_qualify_DstWlanGports(int unit, bcm_field_entry_t entry, bcm_gport_t wlan_port_id, bcm_gport_t wlan_port_mask)
bcm_field_qualify_DstWlanGports
int bcm_field_qualify_MplsVcLabelHeader(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for MPLS VC Label header in the field entry.
int bcm_field_qualify_MplsLabel1(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for MplsLabel1 qualifier.
int bcm_field_qualify_OuterTpid(int unit, bcm_field_entry_t entry, uint16 tpid)
bcm_field_qualify_OuterTpid
int bcm_field_qualify_OuterIpInfo(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
To qualify on outer Ip Information.
int bcm_field_qualify_FlowtrackerFlowTableFull_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
To get the qualified inputs on Flowtracker event whether the flow table is full.
int bcm_field_qualify_OverlayPktType_get(int unit, bcm_field_entry_t entry, bcm_field_pkt_type_t *type)
API to retrieve field packet type associated to a field entry.
bcm_field_entry_action_t entry_action[BCM_FIELD_NUMBER_OF_ACTIONS_PER_GROUP]
Definition: field.h:39056
int bcm_field_qualify_SrcTrunk_get(int unit, bcm_field_entry_t entry, bcm_trunk_t *data, bcm_trunk_t *mask)
Get match criteria for bcmFieldQualifySrcTrunk qualifier from the field entry.
struct bcm_field_action_match_config_s bcm_field_action_match_config_t
bcm_field_pmf_pass_e
Definition: field.h:37325
int bcm_field_qualify_FcoeRxID(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Configure match criteria for bcmFieldQualifyFcoeRxID qualifier from the field entry.
int bcm_field_qualify_CapwapPayloadTos(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyCapwapPayloadTos qualifier in the field entry.
int bcm_field_qualify_VpnOpaqueCtrlId(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on opaque control from VFI table.
bcm_field_context_payload_info_t payload_info
Definition: field.h:38879
int bcm_field_qualify_IngressInterfaceClassVPort(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for bcmFieldQualifyIngressInterfaceClassVPort qualifier in the field entry.
int bcm_field_qualify_VlanTranslationHit(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_VlanTranslationHit
int bcm_field_qualify_ExactMatchActionClassId(int unit, bcm_field_entry_t entry, int group_pri, uint32 data, uint32 mask)
Qualify on Exact Match Action Class Id.
int bcm_field_group_context_attach(int unit, uint32 flags, bcm_field_group_t fg_id, bcm_field_context_t context_id, bcm_field_group_attach_info_t *attach_info)
This Function Attach Field Group to specific context ID, and defines the key template and action prio...
int bcm_field_qualify_BfdYourDiscriminator_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyBfdYourDiscriminator qualifier from the field entry.
int bcm_field_qualify_PortOrientation_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for PortOrientation qualifier.
uint32 mask[BCM_FIELD_QUAL_WIDTH_IN_WORDS]
Definition: field.h:50109
int bcm_field_qset_data_qualifier_get(int unit, bcm_field_qset_t qset, int qual_max, int *qual_arr, int *qual_count)
Get field data qualifiers included in a group qset.
int bcm_field_qualify_SrcIp6_get(int unit, bcm_field_entry_t entry, bcm_ip6_t *data, bcm_ip6_t *mask)
Get match criteria for bcmFieldQualifySrcIp6 qualifier from the field entry.
int bcm_field_qualify_DevicePortOpaqueCommand(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on opaque control from device port table.
int bcm_field_qualify_FibreChanZoneCheck_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyFibreChanZoneCheck qualifier from the field entry.
int bcm_field_qualify_PktFlowType(int unit, bcm_field_entry_t entry, bcm_field_pkt_flow_type_t type)
Selects Packet flow for preselector qualifiers in-order to program the suitable offsets....
int bcm_field_qualify_TunnelPayloadSip_get(int unit, bcm_field_entry_t entry, bcm_ip_t *data, bcm_ip_t *mask)
Get match criteria for bcmFieldQualifyTunnelPayloadSip qualifier from the field entry.
int bcm_field_qualify_MimSrcGportHit(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for MimSrcGportHit qualifier.
int bcm_field_qualify_CapwapPayloadInnerVlan_get(int unit, bcm_field_entry_t entry, bcm_vlan_t *data, bcm_vlan_t *mask)
Get match criteria for bcmFieldQualifyCapwapPayloadInnerVlan qualifier from the field entry.
int bcm_field_qualify_UdpLength_get(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Get match criteria for UDP Length.
int bcm_field_qualify_IOAMPktOverflowed_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
To get the qualified inputs on In-situ OAM header Overflow flag.
int bcm_field_qualify_ECid(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
bcm_field_qualify_ECid
bcm_field_flush_entry_key_t key
Definition: field.h:50182
int bcm_field_qualify_MacSecFlow_get(int unit, bcm_field_entry_t entry, bcm_field_macsec_flow_t *data)
To get the qualified inputs on the MACSEC packet flow.
int bcm_field_oam_stat_action_get_all(int unit, bcm_field_entry_t entry, int oam_stat_max, bcm_field_oam_stat_action_t *oam_stat_action, int *oam_stat_count)
Get all the Oam Stat actions added to the entry.
int bcm_field_qualify_FlowtrackerDisabled_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
To get the qualified inputs on event whether Flowtracker flow tracking is disabled.
int bcm_field_qualify_SRNetId_get(int unit, bcm_field_entry_t entry, int *net_id)
Get match criteria for bcmFieldQualifySRNetId.
int bcm_field_entry_delete_all(int unit)
Delete all entries in all field groups.
int bcm_field_qualify_CopyToCpuTruncate(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on packet marked as truncate copy to CPU.
bcm_field_system_header_profile_e
Definition: field.h:40328
int bcm_field_qualify_IpProtocolClass_get(int unit, bcm_field_entry_t entry, bcm_class_t *data, bcm_class_t *mask)
Get match criteria for bcmFieldQualifyIpProtocolClass qualifier from the field entry.
int bcm_field_qualify_SrcVxlanGports_get(int unit, bcm_field_entry_t entry, bcm_gport_t *vxlan_port_id, bcm_gport_t *vxlan_port_mask)
Get match criteria for bcmFieldQualifySrcVxlanGports qualifier from the field entry.
int bcm_field_qualify_IpFragInfo(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Add match criteria for bcmFieldQualifyIpFragInfo.
enum bcm_field_system_header_e bcm_field_system_header_t
struct bcm_field_flush_profile_info_s bcm_field_flush_profile_info_t
int bcm_field_qualify_ExternalHit7(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyExternalHit7 qualifier in the field entry.
enum bcm_field_stat_e bcm_field_stat_t
</td >< td > Detach counter entries to the given L3 route</td ></tr ></table > section Tunnel L3 tunneling APIs< table >< tr >< th > API</th >< th > Brief</th ></tr >< tr >< td > bcm_tunnel_terminator_t *info</td >< td > Add a tunnel terminator for DIP SIP key</td ></tr >< tr >< td > bcm_tunnel_terminator_t *info</td >< td > Delete a tunnel terminator for DIP SIP key</td ></tr >< tr >< td > bcm_tunnel_terminator_traverse_cb void *user_data</td >< td > Traverse tunnel terminator</td ></tr >< tr >< td > bcm_gport_t bcm_vlan_vector_t vlan_vec</td >< td > Set the valid payload VLANs for this WLAN tunnel</td ></tr >< tr >< td > uint32 bcm_tunnel_terminator_config_key_t bcm_tunnel_terminator_config_action_t *config_action</td >< td > Add tunnel terminator config entries</td ></tr >< tr >< td > bcm_tunnel_terminator_config_key_t *config_key</td >< td > Delete tunnel terminator config entries</td ></tr >< tr >< td > bcm_l3_intf_t bcm_tunnel_initiator_t *tunnel</td >< td > Set the tunneling initiator parameters on an L3 interface</td ></tr >< tr >< td > bcm_l3_intf_t *intf</td >< td > Delete the tunnel association for the given L3 interface</td ></tr >< tr >< td > bcm_l3_intf_t bcm_tunnel_initiator_t *tunnel</td >< td > Get the tunnel property for the given L3 interface</td ></tr >< tr >< td > uint32 int *dscp_map_id</td >< td > Create a tunnel DSCP map instance</td ></tr >< tr >< td > bcm_port_t bcm_tunnel_dscp_map_t *dscp_map</td >< td > Set treated as IPv4 address</td ></tr >< tr >< td > treated as IPv4 address</td ></tr >< tr >< td > treated as IPv4 address</td ></tr >< tr >< td > treated as IPv4 address</td ></tr >< tr >< td > bcm_vrf_t bcm_l3_vrf_stat_t uint32 *val</td >< td > Get L3 VRF counter value for specified VRF statistic type</td ></tr >< tr >< td > bcm_vrf_t bcm_l3_vrf_stat_t uint32 *val</td >< td > Force an immediate counter update and retrieve L3 VRF counter value for specified VRF statistic type</td ></tr >< tr >< td > bcm_vrf_t bcm_l3_vrf_stat_t uint32 val</td >< td > Set L3 VRF counter value for specified VRF statistic type</td ></tr >< tr >< td > bcm_vrf_t int nstat
Definition: l3.dox:3586
int bcm_field_qualify_ExternalHit3(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyExternalHit3 qualifier in the field entry.
int bcm_field_qualify_L2GreFlowId_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for L2GreFlowId qualifier.
bcm_field_group_cycle_t cycle
Definition: field.h:9249
int bcm_field_qualify_TunnelPayloadDstMac(int unit, bcm_field_entry_t entry, bcm_mac_t data, bcm_mac_t mask)
Set match criteria for bcmFieldQualifyTunnelPayloadDstMac qualifier in the field entry.
int bcm_field_qualify_CapwapPayloadVlanFormat(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyCapwapPayloadVlanFormat qualifier in the field entry.
int bcm_field_qualify_ClassId_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for ClassId qualifier.
int bcm_field_qualify_CongestionExperienced(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Qualify on Congestion Experienced Status.
int bcm_field_qualify_L5PayloadByte4_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyL5PayloadByte4 qualifier from the field entry.
int bcm_field_qualify_IpmcValue_get(int unit, bcm_field_entry_t entry, uint64 *data, uint64 *mask)
Get match criteria for IpmcValue qualifier.
enum bcm_field_compression_map_type_e bcm_field_compression_map_type_t
int bcm_field_qualify_HiGigPortFilteringMode(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyHiGigPortFilteringMode qualifier in the field entry.
int bcm_field_qualify_EgressPktQueueNotification_get(int unit, bcm_field_entry_t entry, bcm_field_pkt_queue_notif_t *type)
API to retrieve Egress pkt queue notification associated to a field entry.
int bcm_field_qualify_SrcIpClassUpper(int unit, bcm_field_entry_t entry, bcm_class_t data, bcm_class_t mask)
Configure match criteria for bcmFieldQualifySrcIpClassUpper qualifier from the field entry.
int bcm_field_qualify_FibreChanDstIdClass_get(int unit, bcm_field_entry_t entry, bcm_class_t *data, bcm_class_t *mask)
Get match criteria for bcmFieldQualifyFibreChanDstIdClass qualifier from the field entry.
int bcm_field_oam_stat_action_get(int unit, bcm_field_entry_t entry, bcm_field_oam_stat_action_t *oam_stat_action)
Get the Oam Stat action for a given Stat Object installed in the entry.
int bcm_field_qualify_RoeFrameType_get(int unit, bcm_field_entry_t entry, bcm_field_roe_frame_type_t *data)
To get the qualified inputs on the Roe frame type (see fp_bcm_field_roe_frame_type_t).
int bcm_field_qualify_TranslatedVlanFormat(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyTranslatedVlanFormat qualifier in the field entry.
struct bcm_field_flexctr_config_s bcm_field_flexctr_config_t
int bcm_multicast_t
Definition: types.h:36
int bcm_field_qualify_L5PayloadByte7_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyL5PayloadByte7 qualifier from the field entry.
int bcm_field_qualify_TunnelPayloadIp6Length(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Configure match criteria for bcmFieldQualifyTunnelPayloadIp6Length qualifier for the field entry.
int bcm_field_qualify_RepCopy_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for RepCopy qualifier.
uint8 lan_id
Definition: tsn.dox:281
bcm_field_ace_context_e
Definition: field.h:42437
int bcm_field_qualify_EthernetOamClassVlanTranslateKeySecond_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyEthernetOamClassVlanTranslateKeySecond.
int bcm_field_entry_config_get(int unit, bcm_field_entry_config_t *entry_config)
Retrieve the information of an entry.
int bcm_field_qualify_OamType_get(int unit, bcm_field_entry_t entry, bcm_field_oam_type_t *oam_type)
Get match criteria for bcmFieldQualifyOamType qualifier from the field entry.
int bcm_field_qualify_TunnelAltL4DstPort_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get value for bcmFieldQualifyTunnelAltL4DstPort qualifier from the field entry.
struct bcm_field_qualify_attach_info_s bcm_field_qualify_attach_info_t
int bcm_field_qualify_DstMimGport(int unit, bcm_field_entry_t entry, bcm_gport_t mim_port_id)
bcm_field_qualify_DstMimGport
int bcm_field_qualify_EgressMcastPktReason(int unit, bcm_field_entry_t entry, bcm_field_mcast_pkt_reason_t type)
API to add Egress Multicast Packet reason to a field entry for qualification.
bcm_field_efes_condition_conf_t efes_condition_conf[BCM_FIELD_NUMBER_OF_CONDITIONS_PER_EFES]
Definition: field.h:40192
int bcm_field_qualify_IngressStpState(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_IngressStpState
int bcm_field_qualify_CapwapPayloadIpProtocol_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyCapwapPayloadIpProtocol_get qualifier from the field entry.
int bcm_field_qualify_CpuQueue_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for CpuQueue qualifier.
int bcm_field_hints_add(int unit, bcm_field_hintid_t hint_id, bcm_field_hint_t *hint)
Associate a hint structure to the hint id.
int bcm_field_qualify_IngressL2InterfaceOpaqueCtrlId(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on opaque control id from L2_IIF table.
bcm_field_group_t group
Definition: field.h:9239
int bcm_field_qualify_L5PayloadByte8(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on L5 Payload byte 8.
int bcm_field_qualify_InnerVlanId_get(int unit, bcm_field_entry_t entry, bcm_vlan_t *data, bcm_vlan_t *mask)
Get match criteria for bcmFieldQualifyInnerVlanId qualifier from the field entry.
int bcm_field_qualify_FibreChanFCtl(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for bcmFieldQualifyFibreChanFCtl qualifier in the field entry.
int bcm_field_qualify_IpTunnelValue(int unit, bcm_field_entry_t entry, uint64 data, uint64 mask)
Set match criteria for IpTunnelValue qualifier.
int bcm_field_qualify_TunnelPayloadOuterVlanPri(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyTunnelPayloadOuterVlanPri qualifier in the field entry.
struct bcm_field_entry_oper_s bcm_field_entry_oper_t
int bcm_field_qualify_PktIsVisible_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyPktIsVisible qualifier from the field entry.
int bcm_field_qualify_L2SrcStatic_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyL2SrcStatic qualifier from the field entry.
void bcm_field_data_ethertype_t_init(bcm_field_data_ethertype_t *etype)
Initialize the bcm_field_data_ethertype_s structure.
int bcm_field_qualify_OuterIpInfo_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get value for bcmFieldQualifyOuterIpInfo qualifier from the field entry.
int bcm_field_group_ports_create_mode_id(int unit, bcm_pbmp_t pbmp, bcm_field_qset_t qset, int pri, bcm_field_group_mode_t mode, bcm_field_group_t group)
Create a field group.
enum bcm_field_pmf_pass_e bcm_field_pmf_pass_t
int bcm_field_qualify_DstIpLocal_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for DspIpLocal qualifier.
int bcm_field_qualify_LearnSrcPort(int unit, bcm_field_entry_t entry, bcm_gport_t data)
Set match criteria for LearnSrcPort qualifier.
int bcm_field_qualify_OamEgressClass2Vxlt(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for bcmFieldQualifyOamEgressClass2Vxlt qualifier in the field entry.
int bcm_field_qualify_ArpOpcode(int unit, bcm_field_entry_t entry, bcm_field_ArpOpcode_t data)
Set match criteria for bcmFieldQualifyArpOpcode qualifier in the field entry.
int bcm_field_qualify_ExternalValue1_get(int unit, bcm_field_entry_t entry, uint64 *data, uint64 *mask)
Get match criteria for bcmFieldQualifyExternalValue1 qualifier in the field entry.
int bcm_field_qualify_MacSecTag_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
To get the qualified inputs on SecTag field in MACSEC tagged packets.
int bcm_field_qualify_MplsLabel3Exp(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for MplsLabel3Exp qualifier.
uint32 gp_counter_id
Definition: field.h:9279
int bcm_field_qualify_EgressClass_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get match criteria for EgressClass qualifier.
int bcm_field_efes_action_info_get(int unit, bcm_field_group_t fg_id, bcm_field_context_t context_id, bcm_field_action_priority_t encoded_position, bcm_field_efes_action_info_t *efes_action_info)
This function give the caller all info concerning contents of an EFES that was added with bcm_field_e...
bcm_field_presel_t presel_id
Definition: field.h:9155
int bcm_field_qualify_OuterL2MacInfo(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
To qualify on outer Ip Information.
uint32 mask[BCM_FIELD_QUAL_WIDTH_IN_WORDS]
Definition: field.h:39036
int bcm_field_data_qualifier_ip_protocol_add(int unit, int qual_id, bcm_field_data_ip_protocol_t *ip_protocol)
Add IP protocol-based offset to data qualifier object.
int bcm_field_qualify_Ip6PktNextHeader_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyIp6PktNextHeader qualifier from the field entry.
int bcm_field_qualify_TunnelPayloadL4SrcPort(int unit, bcm_field_entry_t entry, bcm_l4_port_t data, bcm_l4_port_t mask)
Get match criteria for bcmFieldQualifyTunnelPayloadL4SrcPort qualifier in the field entry.
bcm_field_egress_flow_encap_e
Definition: field.h:42272
int bcm_field_qualify_IpInfo_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyIpInfo qualifier from the field entry.
int bcm_field_qualify_HiGigGbpPresent(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on Overlay GBP Presence.
int bcm_field_qualify_OverlayVlanFormat(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
API to add Overlay Vlan Tag Format to a field entry for qualification.
int bcm_field_action_info_get(int unit, bcm_field_action_t action_id, bcm_field_stage_t stage, bcm_field_action_info_t *action_info)
This function gets all information of an action.
int bcm_field_qualify_DstIp6ClassMsbNibble_get(int unit, bcm_field_entry_t entry, bcm_class_t *data, bcm_class_t *mask)
Get match criteria for bcmFieldQualifyDstIp6ClassMsbNibble qualifier from the field entry.
int bcm_field_qualify_PdelayReq(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on the PDELAY_REQ message.
sequence RST and ACK not set</td ></tr >< tr >< td > BCM_FIELD_DOSATTACK_TCP_DSTPORT_ZERO</td >< td > Dos Attack Event when TCP packet with Destination port equals to</td ></tr >< tr >< td > BCM_FIELD_DOSATTACK_TCP_SRCPORT_ZERO</td >< td > Dos Attack Event when TCP packet with Source port equals to</td ></tr >< tr >< td > BCM_FIELD_DOSATTACK_TCP_DST_IP_BCAST</td >< td > Dos Attack Event when TCP Packet with Destination IP Broadcast</td ></tr >< tr >< td > BCM_FIELD_DOSATTACK_TCPFLAGS_ZERO</td >< td > Dos Attack Event when configured TCP flags is zero</td ></tr >< tr >< td > BCM_FIELD_DOSATTACK_TCPFLAGS_RESVD_NONZERO</td >< td > Dos Attack Event when configured Reserved flags is non zero</td ></tr >< tr >< td > BCM_FIELD_DOSATTACK_TCPFLAGS_ACK</td >< td > Dos Attack Event when TCP flag ACK is set and Acknowledge number is zero</td ></tr >< tr >< td > BCM_FIELD_DOSATTACK_TCPFLAGS_URG_NOURGPTR</td >< td > Dos Attack Event when TCP Flag URG set and Urgent pointer is zero</td ></tr >< tr >< td > BCM_FIELD_DOSATTACK_TCPFLAGS_NOURG_URGPTR</td >< td > Dos Attack Event when TCP Flag URG not set and Urgent pointer is not zero</td ></tr >< tr >< td > BCM_FIELD_DOSATTACK_TCPFLAGS_SYNOPTION</td >< td > Dos Attack Event when TCP Flag SYN set and Option same as configured value</td ></tr ></table > subsection fp_policers Policer result usage Policer use options for bcmFieldActionUsePolicerResult< table >< caption > Policer result usage</caption >< tr >< th > Name</th >< th > Purpose</th ></tr >< tr >< td > BCM_FIELD_USE_POLICER_RESULT_INGRESS</td >< td > Use policer result on ingress</td ></tr >< tr >< td > BCM_FIELD_USE_POLICER_RESULT_EGRESS</td >< td > Use policer result on egress</td ></tr ></table > subsection fp_actions Field Actions Many types of actions may be performed on a packet when it matches a filter entry The type bcm_field_action_t is an enumeration of the possible actions Associated with each action are two or three parameters that may be needed by the action(see \ref bcm_field_action_add, \ref bcm_field_action_config_add, \ref bcm_field_action_class_add)). Note that while bcm_field_action_add take two parameters
int bcm_field_qualify_Ip6PktTrafficClass(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Configure match criteria for bcmFieldQualifyIp6PktTrafficClass qualifier for the field entry.
int bcm_field_qualify_IntCongestionNotification_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for IntCongestionNotification qualifier.
int bcm_field_qualify_MacSecOpaque(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
To qualify on macsec opaque object.
int bcm_field_qualify_SRTagType_get(int unit, bcm_field_entry_t entry, bcm_field_sr_tag_type_t *type)
Get match criteria for bcmFieldQualifySRTagType.
int bcm_field_qualify_ExternalHit1(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyExternalHit1 qualifier in the field entry.
int bcm_field_action_width_get(int unit, uint32 flags, int internal_action, uint32 *width_p)
Get current width (in bits) set to a specific action or get default width (in bits) of a specific act...
int bcm_field_qualify_MplsLabel3Bos(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for MplsLabel3Bos qualifier.
int bcm_field_qualify_RecircleHdrDropReason(int unit, bcm_field_entry_t entry, bcm_field_drop_reason_t type)
API to add redirect header drop reason to a field entry for qualification.
int bcm_field_qualify_IngressECid(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
bcm_field_qualify_IngressECid
struct bcm_field_action_attach_info_s bcm_field_action_attach_info_t
int bcm_field_qualify_MplsCtrlPktType_get(int unit, bcm_field_entry_t entry, bcm_field_mpls_ctrl_pkt_type_t *type)
API to retrieve MPLS control packet type associated to a field entry.
int bcm_field_qualify_SysHdrLocalDstport(int unit, bcm_field_entry_t entry, bcm_port_t data, bcm_port_t mask)
To qualify on System Header Local Destination port.
int bcm_field_qualify_PtpPktCtrl(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
To qualify on PTP packet control.
int bcm_field_group_oper_mode_set(int unit, bcm_field_qualify_t stage, bcm_field_group_oper_mode_t mode)
Set operational mode of field group's in a particulat Filter Processor Stage.
int bcm_field_qualify_PtpReserved1_get(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Get match criteria for PTP Rserved1.
int bcm_field_qualify_MplsLabel2Ttl(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for MplsLabel2Ttl qualifier.
int bcm_field_qualify_L2SrcValue_get(int unit, bcm_field_entry_t entry, uint64 *data, uint64 *mask)
Get match criteria for L2SrcValue qualifier.
int bcm_field_qualify_InnerDstIp(int unit, bcm_field_entry_t entry, bcm_ip_t data, bcm_ip_t mask)
bcm_field_qualify_InnerDstIp
int bcm_field_qualify_SrcPortSRNetId_get(int unit, bcm_field_entry_t entry, uint8 *net_id, uint8 *mask)
Get match criteria for bcmFieldQualifySrcPortSRNetId.
int bcm_field_qualify_Ip6Length(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Configure match criteria for bcmFieldQualifyIp6Length qualifier for the field entry.
int bcm_field_macsec_DstMacRange_set(int unit, bcm_mac_t lower_limit, bcm_mac_t upper_limit)
Configures lower and upper limits to be used by qualifier bcmFieldQualifyMacSecDstMacRangeHit.
int bcm_field_qualify_FlowtrackerGroupValid_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
To get the qualified inputs on event Flowtracker group valid or not.
int bcm_field_range_set(int unit, uint32 flags, bcm_field_stage_t stage, bcm_field_range_t range_id, bcm_field_range_info_t *range_info)
Set new Field Range used for range qualifier.
uint8 name[BCM_FIELD_MAX_SHORT_NAME_LEN]
Definition: field.h:38566
int bcm_field_context_param_set(int unit, uint32 flags, bcm_field_stage_t stage, bcm_field_context_t context_id, bcm_field_context_param_info_t *context_params)
This function sets specific attribute value for a context.
int bcm_field_qualify_BfdYourDiscriminator(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for bcmFieldQualifyBfdYourDiscriminator qualifier in the field entry.
enum bcm_field_input_types_e bcm_field_input_types_t
int bcm_udf_id_t
Definition: types.h:2023
int bcm_field_qualify_L4SrcPortClass_get(int unit, bcm_field_entry_t entry, bcm_class_t *data, bcm_class_t *mask)
Get match criteria for bcmFieldQualifyL4SrcPortClass qualifier from the field entry.
int bcm_field_qualify_TcpClassZero_get(int unit, bcm_field_entry_t entry, bcm_class_t *data, bcm_class_t *mask)
Get match criteria for bcmFieldQualifyTcpClassZero qualifier from the field entry.
enum bcm_color_e bcm_color_t
int bcm_field_qualify_InnerL4DstPort_get(int unit, bcm_field_entry_t entry, bcm_l4_port_t *data, bcm_l4_port_t *mask)
Get match criteria for bcmFieldQualifyInnerL4DstPort qualifier from the field entry.
int bcm_field_qualify_SrcTrunkMemberGport_get(int unit, bcm_field_entry_t entry, bcm_gport_t *data)
Get match criteria for bcmFieldQualifySrcTrunkMemberGport qualifier from the field entry.
int bcm_field_qualify_CosQueueId(int unit, bcm_field_entry_t entry, bcm_gport_t queue_gport)
Qualify on Cos Queue.
bcm_field_stat_action_t action
Definition: field.h:208
int bcm_field_qualify_GpeReserved1_get(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Get match criteria for GPE Reserved1.
int bcm_field_qualify_NshServiceIndex(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
API to match on NSH Service Index.
uint8 name[BCM_FIELD_MAX_SHORT_NAME_LEN]
Definition: field.h:39771
int bcm_field_qualify_CapwapHdrType(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyCapwapHdrType qualifier in the field entry.
enum bcm_field_layer_type_e bcm_field_layer_type_t
int bcm_field_qualify_MimlVlanId(int unit, bcm_field_entry_t entry, bcm_vlan_t data, bcm_vlan_t mask)
Set match criteria for bcmFieldQualifyMimlVlanId qualifier in the field entry.
int bcm_field_qualify_L3SrcHostHit_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyL3SrcHostHit qualifier from the field entry.
int bcm_field_qualify_IfaMaxLength(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
To qualify on IFA Max length.
int bcm_field_qualify_SrcPortSRLanId(int unit, bcm_field_entry_t entry, uint8 lan_id)
Set match criteria for bcmFieldQualifySrcPortSRLanId.
int bcm_field_qualify_OpaqueObject4(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
To Qualify on Opaque Object4 which was assigned by Flex modules for example NSH, INT....
bcm_field_presel_t presel_id
Definition: field.h:37339
bcm_field_packet_remove_layers_e
Definition: field.h:39365
int bcm_field_entry_stat_attach(int unit, bcm_field_entry_t entry, int stat_id)
Attach statistics entity to Field Processor entry.
int bcm_field_qualify_FlexStateResultA0_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get value for bcmFieldQualifyFlexStateResultA0 qualifier from the field entry.
int bcm_field_qualify_MplsOamGALExposed_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyMplsOamGALExposed.
int bcm_field_qualify_IntPktVersionOne_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get to match on INT (Inband-Telemetry) header version one packet qualification from a field entry.
int bcm_field_qualify_MplsOamACH_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for MplsOamACH qualifier.
int bcm_field_qualify_DstIpClassUpper_get(int unit, bcm_field_entry_t entry, bcm_class_t *data, bcm_class_t *mask)
Get match criteria for bcmFieldQualifyDstIpClassUpper qualifier from the field entry.
int bcm_field_qualify_TtlClassOne(int unit, bcm_field_entry_t entry, bcm_class_t data, bcm_class_t mask)
Configure match criteria for bcmFieldQualifyTtlClassOne qualifier from the field entry.
int bcm_field_qualify_InterfaceClassPort(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
bcm_field_qualify_InterfaceClassPort
int bcm_field_qualify_FcoeOxID(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Configure match criteria for bcmFieldQualifyFcoeOxID qualifier from the field entry.
bcm_field_qualifier_class_t qual_class
Definition: field.h:39007
int bcm_field_qualify_DstPort_get(int unit, bcm_field_entry_t entry, bcm_module_t *data_modid, bcm_module_t *mask_modid, bcm_port_t *data_port, bcm_port_t *mask_port)
Get match criteria for bcmFieldQualifyDstPort qualifier from the field entry.
bcm_field_network_tag_type_e
Definition: field.h:35879
bcm_field_group_tcam_info_t tcam_info
Definition: field.h:37941
int bcm_field_qualify_TrunkMemberSourceModuleId_get(int unit, bcm_field_entry_t entry, int *data, int *mask)
Get match criteria for bcmFieldQualifyTrunkMemberSourceModuleId qualifier from the field entry.
int bcm_field_qualify_TranslatedInnerVlanId_get(int unit, bcm_field_entry_t entry, bcm_vlan_t *data, bcm_vlan_t *mask)
Get match criteria for bcmFieldQualifyTranslatedInnerVlanId qualifier from the field entry.
int bcm_field_qualify_IntHdrPresent_get(int unit, bcm_field_entry_t entry, bcm_field_IntHdr_Location_t *int_type)
Get match criteria for IntHdrPresent qualifier.
uint32 nof_qualifiers
Definition: field.h:37356
int bcm_field_qualify_PktType_get(int unit, bcm_field_entry_t entry, bcm_field_pkt_type_t *type)
API to retrieve field packet type associated to a field entry.
int bcm_field_qualify_ForwardingStatus_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get value for bcmFieldQualifyForwardingStatus qualifier from the field entry.
int bcm_field_qualify_HiGigSrcModPortGport_get(int unit, bcm_field_entry_t entry, bcm_gport_t *port_id, bcm_gport_t *port_mask)
Get match criteria for bcmFieldQualifyHiGigSrcModPortGport qualifier from the field entry.
int bcm_field_stage_aset_get(int unit, bcm_field_stage_t stage, bcm_field_aset_t *aset)
List the actions supported for a given stage.
int bcm_field_qualify_PimBidirDfStatus_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get to match on PIM Bidrectional designated forwarding bit of the incoming packet qualification from ...
int32 bcm_core_t
Definition: types.h:212
struct bcm_field_udf_spec_s bcm_field_udf_spec_t
int bcm_field_qualify_SrcTMPort(int unit, bcm_field_entry_t entry, bcm_port_t data_port, bcm_port_t mask_port)
bcm_field_qualify_SrcTMPort
int bcm_field_qualify_TunnelHeaderDip_get(int unit, bcm_field_entry_t entry, bcm_ip_t *data, bcm_ip_t *mask)
Get match criteria for bcmFieldQualifyTunnelHeaderDip qualifier from the field entry.
int bcm_field_qualify_MplsLabel6Id(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
To qualify on MPLS label6 id value.
int bcm_field_qualify_MplsTerminatedValue(int unit, bcm_field_entry_t entry, uint64 data, uint64 mask)
Set match criteria for MplsTerminatedValue qualifier.
uint8 bcm_field_ace_format_t
Definition: field.h:39753
int bcm_field_qualify_EtherTypeClass_get(int unit, bcm_field_entry_t entry, bcm_class_t *data, bcm_class_t *mask)
Get match criteria for bcmFieldQualifyEtherTypeClass qualifier from the field entry.
int bcm_field_qualify_CapwapPayloadSrcMac_get(int unit, bcm_field_entry_t entry, bcm_mac_t *data, bcm_mac_t *mask)
Get match criteria for bcmFieldQualifyCapwapPayloadSrcMac qualifier from the field entry.
int bcm_field_qualify_TcpControl_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyTcpControl qualifier from the field entry.
int bcm_field_qualify_SrcModPortGports_get(int unit, bcm_field_entry_t entry, bcm_gport_t *port_id, bcm_gport_t *port_mask)
Get match criteria for bcmFieldQualifySrcModPortGports qualifier from the field entry.
int bcm_field_qualify_OutVPort(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_OutVPort
int bcm_field_qualify_MplsOamGALLabelOnly_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyMplsOamGALLabelOnly.
int bcm_field_qualify_HiGigDstModPortGport_get(int unit, bcm_field_entry_t entry, bcm_gport_t *port_id, bcm_gport_t *port_mask)
Get match criteria for bcmFieldQualifyHiGigDstModPortGport qualifier from the field entry.
int bcm_field_internal_to_bcm_action_map(int unit, uint32 flags, int internal_action, uint32 bcm_action_size, bcm_field_internal_to_bcm_map_t *bcm_action_stage, uint32 *bcm_action_size_actual)
Given low level action, get the BCM actions and stages which use it.
int bcm_field_qualify_TcpAckNum(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for TCP Ack number in the field entry.
int bcm_field_qualify_InnerVlanPri_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyInnerVlanPri qualifier from the field entry.
Definition: field.h:50118
int bcm_field_context_hash_info_get(int unit, bcm_field_stage_t stage, bcm_field_context_t context_id, bcm_field_context_hash_info_t *hash_info)
This function gets HASH info of a specific context.
int bcm_field_qualify_HeaderFormatSet(int unit, bcm_field_entry_t entry, bcm_field_header_format_set_t header_format_set)
Set match for the header formats included in the format_header_set. This qualifier is similar to Head...
int bcm_field_fem_action_add(int unit, uint32 flags, bcm_field_group_t fg_id, bcm_field_action_priority_t encoded_position, bcm_field_fem_action_info_t *fem_action_info)
This function adds FEM machine as a resource to a specific field group.
int bcm_field_qualify_MplsLabel1Hit_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for MplsLabel1Hit qualifier.
int bcm_field_qualify_FibreChanVFTVersion(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyFibreChanVFTVersion qualifier in the field entry.
bcm_field_oam_type_e
Definition: field.h:24875
int bcm_field_qualify_MplsLabel2Ttl_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for MplsLabel2Ttl qualifier.
bcm_field_presel_qualify_data_t qual_data[BCM_FIELD_MAX_NOF_CS_QUALIFIERS]
Definition: field.h:37357
int bcm_field_qualify_OutPort(int unit, bcm_field_entry_t entry, bcm_port_t data, bcm_port_t mask)
bcm_field_qualify_OutPort
bcm_field_hintid_t hintid
Definition: field.h:9302
int bcm_field_qualify_InnerVlanRangeMatch(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on inner vlan range match status.
int bcm_field_qualify_CapwapPayloadSip(int unit, bcm_field_entry_t entry, bcm_ip_t data, bcm_ip_t mask)
bcm_field_qualify_CapwapPayloadSip
int bcm_field_qualify_PacketRes_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyPacketRes qualifier from the field entry.
uint8 entry_valid
Definition: field.h:37353
bcm_field_stage_t stage
Definition: field.h:38978
int bcm_field_qualify_TcpSequenceZero(int unit, bcm_field_entry_t entry, uint32 flag)
bcm_field_qualify_TcpSequenceZero
uint8 name[BCM_FIELD_MAX_NAME_LEN]
Definition: field.h:8576
int bcm_field_qualify_InnerIpType(int unit, bcm_field_entry_t entry, bcm_field_IpType_t type)
bcm_field_qualify_InnerIpType
int bcm_field_group_install(int unit, bcm_field_group_t group)
Install all entries of a field group into the hardware tables.
int bcm_field_qualify_OverlayIpv6ExtensionHdrType(int unit, bcm_field_entry_t entry, bcm_field_ip_option_hdr_type_t type)
API to add Overlay IPv6 Extension header type of a tunnel terminated packet to a field entry for qual...
int bcm_field_qualify_InnerSrcIp6_get(int unit, bcm_field_entry_t entry, bcm_ip6_t *data, bcm_ip6_t *mask)
Get match criteria for bcmFieldQualifyInnerSrcIp6 qualifier from the field entry.
int bcm_field_qualify_DstPortSRType_get(int unit, bcm_field_entry_t entry, bcm_field_port_sr_type_t *type)
Get match criteria for bcmFieldQualifyDstPortSRType.
int bcm_field_qualify_SrcModPortGport(int unit, bcm_field_entry_t entry, bcm_gport_t data)
Set match criteria for bcmFieldQualifySrcModPortGport qualifier in the field entry.
struct bcm_field_efes_condition_conf_s bcm_field_efes_condition_conf_t
int bcm_field_qualify_HiGigDstMulticast(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyHiGigDstMulticast qualifier in the field entry.
int bcm_field_qualify_OamEgressVxltFirstHit(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyOamEgressVxltFirstHit qualifier in the field entry.
int bcm_field_qualify_BfdMultiplierLen(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Set match criteria for bcmFieldQualifyBfdMultiplierLen qualifier in the field entry.
int bcm_field_qualify_MplsControlWordValid(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for MplsControlWordValid qualifier.
int bcm_field_qualify_TunnelPayloadDstMac_get(int unit, bcm_field_entry_t entry, bcm_mac_t *data, bcm_mac_t *mask)
Get match criteria for bcmFieldQualifyTunnelPayloadDstMac qualifier from the field entry.
int bcm_field_qualify_IcmpTypeCode(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
bcm_field_qualify_IcmpTypeCode
int bcm_field_qualify_BfdPktWithDstIpLoopbackAddr_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Retrieve the match criteria fields for BfdPktWithDstIpLoopbackAddr qualifier associated to a given fi...
int bcm_field_qualify_ExternalValue2(int unit, bcm_field_entry_t entry, uint64 data, uint64 mask)
Set match criteria for bcmFieldQualifyExternalValue2 qualifier in the field entry.
struct bcm_field_qualifier_info_get_s bcm_field_qualifier_info_get_t
int bcm_field_qualify_FcoeRxID_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get match criteria for bcmFieldQualifyFcoeRxID qualifier from the field entry.
int bcm_field_qualify_MplsLabel6(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
To qualify on MPLS label6.
int bcm_field_range_create_id(int unit, bcm_field_range_t range, uint32 flags, bcm_l4_port_t min, bcm_l4_port_t max)
Allocate a range checker with specified configuration.
enum bcm_field_IntHdr_Location_e bcm_field_IntHdr_Location_t
int bcm_field_qualify_L2SrcMiscClassId_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyL2SrcMiscClassId from a field entry.
int bcm_field_qualify_MplsForwardingLabelTtl(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for MplsForwardingLabelTtl qualifier.
int bcm_field_qualify_IsUcastCosQueue(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Qualify if packet is stored in unicast Cos Queue.
int bcm_field_action_ports_get(int unit, bcm_field_entry_t entry, bcm_field_action_t action, bcm_pbmp_t *pbmp)
Retrieve the parameters for an action previously added to a field entry.
int bcm_field_qualify_MplsTerminated_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyMplsTerminated qualifier from the field entry.
bcm_field_ForwardingType_e
Definition: field.h:4925
int bcm_field_qualify_TcpSequenceNum(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for TCP Sequence Num in the field entry.
int bcm_field_qualify_Rtag7BHashLower(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Set match criteria for Rtag7BHashLower qualifier.
int bcm_field_qualify_CapwapPayloadL4HdrParseable_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyCapwapPayloadL4HdrParseable_get qualifier from the field entry.
int bcm_field_qualify_SrcClassField_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifySrcClassField qualifier from the field entry.
int bcm_field_qualify_MplsLabel5Exp_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyMplsLabel5Exp qualifier from the field entry.
int bcm_field_qualify_CapwapPayloadIpProtocol(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyCapwapPayloadIpProtocol qualifier in the field entry.
int bcm_field_qualify_InnerSrcIp_get(int unit, bcm_field_entry_t entry, bcm_ip_t *data, bcm_ip_t *mask)
Get match criteria for bcmFieldQualifyInnerSrcIp qualifier from the field entry.
int bcm_l4_port_t
Definition: types.h:107
int bcm_field_qualify_MacSecTag(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on the SecTag field in MACSEC tagged packets.
int bcm_field_qualify_ETag(int unit, bcm_field_entry_t entry, uint64 data, uint64 mask)
bcm_field_qualify_ETag
int bcm_field_qualify_SvpOpaqueCtrlId_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifySvpOpaqueCtrlId qualifier from the field entry.
int bcm_field_qualify_SrcIp6ClassMsbNibble(int unit, bcm_field_entry_t entry, bcm_class_t data, bcm_class_t mask)
Configure match criteria for bcmFieldQualifySrcIp6ClassMsbNibble qualifier from the field entry.
int bcm_field_qualify_ExtensionHeader2Type_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyExtensionHeader2Type qualifier from the field entry.
int bcm_field_qualify_InPorts(int unit, bcm_field_entry_t entry, bcm_pbmp_t data, bcm_pbmp_t mask)
bcm_field_qualify_InPorts
int bcm_field_qualify_FlexStateResultA0(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
To qualify on flex state result counter a0 value.
int bcm_field_qualify_L2IngressInterface_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyL2IngressInterface qualifier from the field entry.
int bcm_field_qualify_RecircleHdrOpaqueCtrlIdC_get(int unit, bcm_field_entry_t entry, int *data, int *mask)
Get value for bcmFieldQualifyRecircleHdrOpaqueCtrlIdC qualifier from the field entry.
int bcm_field_qualify_OverlayVlanFormat_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
API to retrieve Overlay VLAN Tag format associated to a field entry.
bcm_color_t elephant_color
Definition: field.h:9074
int bcm_field_qualify_DSCP(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_DSCP
int bcm_field_qualify_BypassSrcMacFilter(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for BypassSrcMacFilter qualifier.
int bcm_field_qualify_SRNetIdMatched(int unit, bcm_field_entry_t entry, uint8 data)
Set match criteria for bcmFieldQualifySRNetIdMatched.
void bcm_field_context_param_info_t_init(bcm_field_context_param_info_t *context_params)
Initialize the bcm_field_context_param_info_t structure.
int bcm_field_qualify_DevicePortBitmap(int unit, bcm_field_entry_t entry, bcm_pbmp_t data, bcm_pbmp_t mask)
To qualify on a port bitmap generated from device ingress port.
int bcm_field_entry_destroy_all(int unit)
Destroy all field entries.
int bcm_field_context_compare_create(int unit, uint32 flags, bcm_field_stage_t stage, bcm_field_context_t context_id, uint32 pair_id, bcm_field_context_compare_info_t *cmp_info)
This function is used to set up to two pairs of keys for comparison for a given context.
int bcm_field_qualify_DstL3Egress_get(int unit, bcm_field_entry_t entry, bcm_if_t *if_id)
Get match criteria for bcmFieldQualifyDstL3Egress qualifier from the field entry.
bcm_field_tcam_bank_allocation_mode_e
Definition: field.h:37845
int bcm_field_qualify_InterfaceInPorts_get(int unit, bcm_field_entry_t entry, bcm_pbmp_t *data, bcm_pbmp_t *mask)
Get match criteria for bcmFieldQualifyInPorts qualifier from the field entry.
int bcm_field_qualify_FrontPanelPkt(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
API to add qualification for Front panel packet to a field entry.
int bcm_field_qualify_IpInfo(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
bcm_field_qualify_IpInfo
bcm_field_context_hash_function_e
Definition: field.h:39394
int bcm_field_qualify_RangeCheck(int unit, bcm_field_entry_t entry, bcm_field_range_t range, int invert)
bcm_field_qualify_RangeCheck
int bcm_field_qualify_InnerDosAttack(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Configure match criteria for bcmFieldQualifyInnerDosAttack qualifier for the field entry.
int bcm_field_qualify_LoopBackTrafficClass_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyLoopBackTrafficClass qualifier from the field entry.
bcm_field_group_t group_id
Definition: field.h:27192
int bcm_field_qualify_DstMulticastGroup_get(int unit, bcm_field_entry_t entry, bcm_multicast_t *group)
Get match criteria for bcmFieldQualifyDstMulticastGroup qualifier from the field entry.
the same qualifier(bcmFieldQualifyIp4/Ip6) can be included in qualifiers set to qualify either IPv4 packets or IPv6 packets
int bcm_field_qualify_InnerDstIp6High_get(int unit, bcm_field_entry_t entry, bcm_ip6_t *data, bcm_ip6_t *mask)
Get match criteria for bcmFieldQualifyInnerDstIp6High qualifier from the field entry.
</td >< td > Detach counter entries to the given L3 route</td ></tr ></table > section Tunnel L3 tunneling APIs< table >< tr >< th > API</th >< th > Brief</th ></tr >< tr >< td > bcm_tunnel_terminator_t *info</td >< td > Add a tunnel terminator for DIP SIP key</td ></tr >< tr >< td > bcm_tunnel_terminator_t *info</td >< td > Delete a tunnel terminator for DIP SIP key</td ></tr >< tr >< td > bcm_tunnel_terminator_traverse_cb void *user_data</td >< td > Traverse tunnel terminator</td ></tr >< tr >< td > bcm_gport_t bcm_vlan_vector_t vlan_vec</td >< td > Set the valid payload VLANs for this WLAN tunnel</td ></tr >< tr >< td > uint32 flags
Definition: l3.dox:3307
int bcm_field_qualify_EgressClassL3Interface_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get match criteria for EgressClassL3Interface qualifier.
void bcm_field_entry_config_t_init(bcm_field_entry_config_t *entry_config)
Initialize the Field Entry Config structure.
bcm_field_context_compare_type_t compare_1_mode
Definition: field.h:38545
int bcm_field_qualify_UdfClass(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for bcmFieldQualifyUdfClass qualifier in the field entry.
int bcm_field_qualify_IfaVersion2(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify if IFA version is 2.
int bcm_field_qualify_SrcVlanGport(int unit, bcm_field_entry_t entry, bcm_gport_t vlan_port_id)
bcm_field_qualify_SrcVlanGport
int bcm_field_qualify_TunnelPayloadIp4Length_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get match criteria for bcmFieldQualifyTunnelPayloadIp4Length qualifier from the field entry.
int bcm_field_qualify_L2SrcMulticastHit_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyL2SrcMulticastHit.
int bcm_field_qualify_DstIp6ClassLower_get(int unit, bcm_field_entry_t entry, bcm_class_t *data, bcm_class_t *mask)
Get match criteria for bcmFieldQualifyDstIp6ClassLower qualifier from the field entry.
int bcm_field_entry_config_copy(int unit, bcm_field_entry_t src_entry, bcm_field_entry_t *dst_entry, uint32 flags)
Create a copy of an existing field entry and control the entry copy using flags.
uint32 max_group_size
Definition: field.h:27189
bcm_field_higig_proxy_tunnel_type_e
Definition: field.h:36690
int bcm_field_qualify_OamHeaderOffset_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for OamHeaderOffset qualifier.
int bcm_field_qualify_MplsLabel2_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for MplsLabel2 qualifier.
int bcm_field_qualify_OuterL5PayloadByte7(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on Outer L5 Payload byte 7.
int bcm_field_qualify_InterfaceClassMplsLookup1(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
To qualify on Class identifier derived from MPLS label 1 entry Lookup.
int bcm_field_qualify_IfaMaxLength_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
To get qualified inputs on IFA Max length.
int bcm_field_qualify_SrcMimGports_get(int unit, bcm_field_entry_t entry, bcm_gport_t *mim_port_id, bcm_gport_t *mim_port_mask)
Get match criteria for bcmFieldQualifySrcMimGports qualifier from the field entry.
int bcm_field_qualify_EgressClassL3Interface(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Set match criteria for EgressClassL3Interface qualifier.
enum bcm_field_src_class_mode_e bcm_field_src_class_mode_t
int bcm_field_qualify_LoopbackHiGig3Flags(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Add higig3 loopback packet flags qualification to a field entry.
enum bcm_field_action_width_flags_e bcm_field_action_width_flags_t
int bcm_field_qualify_TunnelAltDstIp6_get(int unit, bcm_field_entry_t entry, bcm_ip6_t *data, bcm_ip6_t *mask)
Get value for bcmFieldQualifyTunnelAltDstIp6 qualifier from the field entry.
int bcm_field_qualify_FibreChanVFTPri(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyFibreChanVFTPri qualifier in the field entry.
int bcm_field_qualify_SrcCompressionClassId(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
bcm_field_qualify_SrcCompressionClassId
int bcm_field_qualify_TimeStampTxPktType(int unit, bcm_field_entry_t entry, bcm_field_timestamp_transmit_pkt_type_t ts_pkt_type)
To match on Tx Timestamp packet type.
int bcm_field_qualify_CompressionDstHit(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for CompressionDstHit qualifier.
int bcm_field_qualify_OuterVlanPri_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyOuterVlanPri qualifier from the field entry.
int bcm_field_qualify_MplsLabel7_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get value for bcmFieldQualifyMplsLabel7 qualifier from the field entry.
struct bcm_field_class_info_s bcm_field_class_info_t
int bcm_field_qualify_CnTagPresent(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
API to add congestion Tag present status to a field entry for qualification.
int bcm_field_qualify_MplsLabel7Ttl_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyMplsLabel7Ttl qualifier from the field entry.
int bcm_field_qualify_OamEgressEtherType(int unit, bcm_field_entry_t entry, uint16 data)
Set match criteria for bcmFieldQualifyOamEgressEtherType qualifier in the field entry.
struct bcm_field_flush_entry_info_s bcm_field_flush_entry_info_t
int bcm_field_qualify_FabricQueueTag_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyFabricQueueTag qualifier from the field entry.
enum bcm_field_HiGigForwardingType_e bcm_field_HiGigForwardingType_t
int bcm_field_qualify_LoopBackCpuMasqueradePktProfile(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyLoopBackCpuMasqueradePktProfile qualifier in the field entry.
int bcm_field_qualify_InVPort32(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
bcm_field_qualify_InVPort32
int bcm_field_stat_get32(int unit, int stat_id, bcm_field_stat_t stat, uint32 *value)
Get 32-bit counter value for specific statistic type.
int bcm_field_qualify_SrcIp6SrhValid(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_SrcIp6SrhValid
int bcm_field_qualify_InnerDstIp6_get(int unit, bcm_field_entry_t entry, bcm_ip6_t *data, bcm_ip6_t *mask)
Get match criteria for bcmFieldQualifyInnerDstIp6 qualifier from the field entry.
int bcm_field_qualify_MacSecSecTagCbit_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
To get the qualified inputs on the C-Bit of the MACSEC SECTAG.
int bcm_field_compression_direct_mapped_get(int unit, bcm_field_compression_map_type_t type, bcm_pbmp_t ports, uint16 entry_cnt, uint16 *val_arr, uint16 *map_val_arr)
To get the remapped compression values for a particular value.
int bcm_field_qualify_InnerIp6PktNextHeader(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Configure match criteria for bcmFieldQualifyInnerIp6PktNextHeader qualifier for the field entry.
int bcm_field_qualify_InnerIpInfo_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get value for bcmFieldQualifyInnerIpInfo qualifier from the field entry.
int bcm_field_qualify_TrillEgressRbridgeHit_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for TrillEgressRbridgeHit qualifier.
bcm_field_action_e
Definition: field.h:5955
int bcm_field_qualify_InnerTcpControl(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_InnerTcpControl
int bcm_field_qualify_L4Ports_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyL4Ports qualifier from the field entry.
int bcm_field_qualify_MplsForwardingLabelExp_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for MplsForwardingLabelExp qualifier.
uint32 flex_counter_action_id
Definition: field.h:9275
int bcm_field_qualify_GbpDstId(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
To qualify on GBP destination ID.
int bcm_field_qualify_DstMac_get(int unit, bcm_field_entry_t entry, bcm_mac_t *data, bcm_mac_t *mask)
Get match criteria for bcmFieldQualifyDstMac qualifier from the field entry.
int bcm_field_qualify_HiGigMirrorToVp_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyHiGigMirrorToVp qualifier from the field entry.
struct bcm_field_action_params_s bcm_field_action_params_t
int bcm_field_qualify_HiGigIngressClassificationTag_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get match criteria for bcmFieldQualifyHiGigIngressClassificationTag qualifier from the field entry.
int bcm_field_action_vlan_actions_add(int unit, bcm_field_entry_t entry, bcm_field_action_t action, bcm_vlan_action_set_t *vlan_action_set)
Add VLAN actions to a field entry.
int bcm_field_qualify_EthernetOamHeaderBits32_63(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for EthernetOamHeaderBits32_63.
int bcm_field_qualify_InterfaceClassMplsLookup2(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
To qualify on Class identifier derived from MPLS label 2 entry Lookup.
struct bcm_field_src_class_s bcm_field_src_class_t
int bcm_field_qualify_SrcIp6SrhValid_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifySrcIp6SrhValid qualifier from the field entry.
int bcm_field_qualify_MplsMcastEthertypePresent_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
API to retrieve MPLS Multicast EtherType present status associated to a field entry.
int bcm_field_qualify_L3SrcRouteValue_get(int unit, bcm_field_entry_t entry, uint64 *data, uint64 *mask)
Get match criteria for L3SrcRouteValue qualifier.
int bcm_field_qualify_ExternalValue4(int unit, bcm_field_entry_t entry, uint64 data, uint64 mask)
Set match criteria for bcmFieldQualifyExternalValue4 qualifier in the field entry.
int bcm_field_qualify_EcnValue(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for PortOrientation qualifier.
int bcm_field_qualify_OamMeterDisable_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for OamMeterDisable qualifier.
int bcm_field_qualify_OpaqueTagType_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
To get the qualified inputs on the tag type configured for opaque tags.
int bcm_field_qualify_FibreChanVFTVsanId_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get match criteria for bcmFieldQualifyFibreChanVFTVsanId qualifier from the field entry.
int bcm_field_qualify_DstMulticastGroup(int unit, bcm_field_entry_t entry, bcm_multicast_t group)
bcm_field_qualify_DstMulticastGroup
int bcm_field_qualify_SrcIpClassMsbNibble(int unit, bcm_field_entry_t entry, bcm_class_t data, bcm_class_t mask)
Configure match criteria for bcmFieldQualifySrcIpClassMsbNibble qualifier from the field entry.
int bcm_field_qualify_HiGigDstType_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyHiGigDstType qualifier from the field entry.
int bcm_field_qualify_ForwardHdrVlanId(int unit, bcm_field_entry_t entry, bcm_vlan_t data, bcm_vlan_t mask)
Set match criteria for bcmFieldQualifyForwardHdrVlanId qualifier in the field entry.
int bcm_field_qualify_ForwardingVlanId(int unit, bcm_field_entry_t entry, bcm_vlan_t data, bcm_vlan_t mask)
Set match criteria for bcmFieldQualifyForwardingVlanId qualifier in the field entry.
int bcm_field_qualify_InnerIpInfo(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
To qualify on inner Ip Information.
struct bcm_field_fem_input_info_s bcm_field_fem_input_info_t
int bcm_field_qualify_RawResidenceTime(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Add match criteria for bcmFieldQualifyRawResidenceTime.
int bcm_field_qualify_SrcGports(int unit, bcm_field_entry_t entry, bcm_gport_t port_id, bcm_gport_t port_mask)
bcm_field_qualify_SrcGports
int bcm_field_group_qualifier_offset_get(int unit, uint32 flags, bcm_field_group_t fg_id, bcm_field_qualify_t qualifier, int *offset)
Get the offset of the qualifier in the key.
bcm_field_stage_t bcm_stage
Definition: field.h:8447
int bcm_field_qualify_Rtag7CHashUpper_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get match criteria for Rtag7CHashUpper qualifier.
int bcm_field_qualify_EgressPortCtrlType_get(int unit, bcm_field_entry_t entry, bcm_field_egress_port_ctrl_t *ctrl_type)
To Qualify on type of the Egress port control.
void bcm_field_action_info_t_init(bcm_field_action_info_t *action_info)
Initialize the bcm_field_action_info_t structure.
int bcm_field_qualify_StaggeredPreselProfile3_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Set match criteria for bcmFieldQualifyStaggeredPreselProfile3_get.
int bcm_field_qualify_L2Format_get(int unit, bcm_field_entry_t entry, bcm_field_L2Format_t *type)
Get match criteria for bcmFieldQualifyL2Format qualifier from the field entry.
bcm_field_action_priority_t priority
Definition: field.h:38782
int bcm_field_qualify_PktIsVisible(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyPktIsVisible qualifier in the field entry.
int bcm_field_qualify_HiGigVni_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get match criteria for bcmFieldQualifyHiGigVni qualifier from the field entry.
int bcm_field_qualify_TsnFlowId(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for bcmFieldQualifyTsnFlowId.
int bcm_field_qualify_MacSecSecTagCbit(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on the C-Bit of MACSEC SECTAG.
int bcm_field_qualify_EgressTunnelIpHeaderFlowLabel(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for EgressTunnelIpHeaderFlowLabel qualifier.
void bcm_field_qualifier_info_get_t_init(bcm_field_qualifier_info_get_t *qual_info)
Initialize the bcm_field_qualifier_info_get_t structure.
int bcm_field_qualify_MplsLabel7Id(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
To qualify on MPLS label7 id value.
bcm_field_sr_supervision_type_e
Definition: field.h:34304
bcm_field_input_types_t input_type
Definition: field.h:38804
int bcm_field_qualify_IpAddrsNormalized(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for IpAddrsNormalized qualifier.
enum bcm_field_port_sr_type_e bcm_field_port_sr_type_t
int bcm_field_qualify_MimlVlanId_get(int unit, bcm_field_entry_t entry, bcm_vlan_t *data, bcm_vlan_t *mask)
Get match criteria for bcmFieldQualifyMimlVlanId qualifier from the field entry.
int bcm_field_qualify_L4DstPortClass_get(int unit, bcm_field_entry_t entry, bcm_class_t *data, bcm_class_t *mask)
Get match criteria for bcmFieldQualifyL4DstPortClass qualifier from the field entry.
int bcm_field_qualify_IncomingVlanFormat(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyIncomingVlanFormat qualifier in the field entry.
int bcm_field_qualify_InVportDataIndex_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyInVportDataIndex qualifier from the field entry.
int bcm_field_qualify_HiGigDstTrunkId_get(int unit, bcm_field_entry_t entry, bcm_trunk_t *data, bcm_trunk_t *mask)
Get match criteria for bcmFieldQualifyHiGigDstTrunkId qualifier from the field entry.
int bcm_field_qualify_L2GreFlowId(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for L2GreFlowId qualifier.
int bcm_field_qualify_DstPortSRType(int unit, bcm_field_entry_t entry, bcm_field_port_sr_type_t type)
Set match criteria for bcmFieldQualifyDstPortSRType.
int bcm_field_qualify_PktMiscCtrl(int unit, bcm_field_entry_t entry, bcm_field_pkt_misc_ctrl_t pkt_misc_ctrl)
Set match criteria for Packet Misc Controls.
bcm_field_context_hash_action_value_e
Definition: field.h:39444
int bcm_field_qualify_MplsOamUpperLabelDataDrop(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyMplsOamUpperLabelDataDrop.
int bcm_field_qset_data_qualifier_delete(int unit, bcm_field_qset_t *qset, int qual_id)
Delete a data/offset qualifier from a group qualifiers set. Use bcm_field_qset_data_qualifier_delete ...
int bcm_field_qualify_ExternalHit1_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyExternalHit1 qualifier in the field entry.
int bcm_field_qualify_HiGigVpPreserveFlags_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyHiGigVpPreserveFlags qualifier from the field entry.
int bcm_field_qualify_ExternalHit6(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyExternalHit6 qualifier in the field entry.
struct bcm_field_hint_s bcm_field_hint_t
uint8 hit
Definition: field.h:50164
enum bcm_field_start_packet_strip_e bcm_field_start_packet_strip_t
int bcm_field_qualify_IpmcV6Pkt_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
API to retrieve IPMC Ipv6 packet qualification from a field entry.
int bcm_field_group_oper_mode_get(int unit, bcm_field_qualify_t stage, bcm_field_group_oper_mode_t *mode)
Get operational mode of field group's in a particulat Filter Processor Stage.
int bcm_field_qualify_CapwapPayloadInnerVlanCfi(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyCapwapPayloadInnerVlanCfi qualifier in the field entry.
int bcm_field_qualify_MimVlanCfi_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for MimVlanCfi qualifier.
int bcm_field_qualify_PacketSize_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for PacketSize qualifier.
int bcm_field_qualify_EtherType_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get match criteria for bcmFieldQualifyEtherType qualifier from the field entry.
int bcm_field_qualify_OamMepId_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for OamMepId qualifier.
int bcm_field_qualify_Ip6NextHeader_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyIp6NextHeader qualifier from the field entry.
int bcm_if_group_t
Definition: types.h:110
enum bcm_field_ingress_policer_pools_e bcm_field_ingress_policer_pools_t
int bcm_field_qualify_IpTtlZeroPkt_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get to match on IP packet with TTL zero qualification from a field entry.
int bcm_field_qualify_SrcGports_get(int unit, bcm_field_entry_t entry, bcm_gport_t *port_id, bcm_gport_t *port_mask)
Get match criteria for bcmFieldQualifySrcGports qualifier from the field entry.
int bcm_field_qualify_DstVxlanGport(int unit, bcm_field_entry_t entry, bcm_gport_t vxlan_port_id)
bcm_field_qualify_DstVxlanGport
int bcm_field_destination_entry_traverse(int unit, bcm_field_destination_entry_traverse_cb callback, void *user_data)
Traverse field destination entries.
enum bcm_rx_trap_e bcm_rx_trap_t
int bcm_field_qualify_MimlVlan(int unit, bcm_field_entry_t entry, bcm_vlan_t data, bcm_vlan_t mask)
Set match criteria for bcmFieldQualifyMimlVlan qualifier in the field entry.
bcm_multicast_t mc_group
Definition: field.h:9100
void bcm_field_context_hash_info_t_init(bcm_field_context_hash_info_t *hash_info)
Initialize the bcm_field_context_hash_info_t structure.
int bcm_field_qualify_HiGigOffloadEnginePreserveDscp_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyHiGigOffloadEnginePreserveDscp qualifier from the field entry.
int bcm_field_qualify_IpIdentifier_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
To get the qualified inputs on IP identifier field.
int bcm_field_qualify_HiGig(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Qualify on HiGig packets.
int bcm_field_qualify_DosAttackEvents(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Configure Match criteria for bcmFieldQualifyDosAttackEvents qualifier for the field entry.
enum bcm_field_context_param_type_e bcm_field_context_param_type_t
int bcm_field_entry_install_and_handler_update(int unit, bcm_field_entry_t entry, bcm_field_entry_t *large_dt_entry)
Install a field entry into large direct lookup hardware tables.
int bcm_field_qualify_CascadedKeyValue(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for CascadedKeyValue qualifier.
enum bcm_field_flow_control_pkt_type_e bcm_field_flow_control_pkt_type_t
int bcm_field_qualify_TunnelAltL4SrcPort_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get value for bcmFieldQualifyTunnelAltL4SrcPort qualifier from the field entry.
int bcm_field_stat_config_get(int unit, int stat_id, int nstat, bcm_field_stat_t *stat_arr)
Get enabled statistics for specific collection entity.
int bcm_field_group_config_validate(int unit, bcm_field_group_config_t *group_config, bcm_field_group_mode_t *mode)
To verify whether a group can be created with a given qset and mode.
int bcm_field_qualify_HiGigSrcGport(int unit, bcm_field_entry_t entry, bcm_gport_t port_id, bcm_gport_t port_mask)
Set match criteria for bcmFieldQualifyHiGigSrcGport qualifier in the field entry.
int bcm_field_qualify_TtlClassOne_get(int unit, bcm_field_entry_t entry, bcm_class_t *data, bcm_class_t *mask)
Get match criteria for bcmFieldQualifyTtlClassOne qualifier from the field entry.
int bcm_field_qualify_MimlVlanCfi(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyMimlVlanCfi qualifier in the field entry.
enum bcm_field_pkt_flow_type_e bcm_field_pkt_flow_type_t
int bcm_field_qualify_MplsLabel6Ttl(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on MPLS label6 ttl value.
int bcm_field_qualify_SrcIpClass_get(int unit, bcm_field_entry_t entry, bcm_class_t *data, bcm_class_t *mask)
Get match criteria for bcmFieldQualifySrcIpClass qualifier from the field entry.
int bcm_field_action_remove(int unit, bcm_field_entry_t entry, bcm_field_action_t action)
Remove an action from a field entry.
int bcm_field_qualify_EgressClassPort(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
To Qualify on Class ID assigned to packet based on Egress Port.
int bcm_field_qualify_OverlayL2PktType_get(int unit, bcm_field_entry_t entry, bcm_field_l2_pkt_type_t *type)
API to retrieve Overlay L2 Packet type associated to a field entry.
int bcm_field_qualify_CapwapPayloadSip6(int unit, bcm_field_entry_t entry, bcm_ip6_t data, bcm_ip6_t mask)
bcm_field_qualify_CapwapPayloadSip6
enum bcm_field_flowtracker_timestamp_delay_mode_e bcm_field_flowtracker_timestamp_delay_mode_t
int bcm_field_qualify_OamEgressVxltSecondHit_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyOamEgressVxltSecondHit qualifier from the field entry.
int bcm_field_qualify_MplsOuterLabelPop(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyMplsOuterLabelPop qualifier in the field entry.
int bcm_field_qualify_InnerIp6FlowLabel_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyInnerIp6FlowLabel qualifier from the field entry.
int bcm_field_qualify_MplsTopHeader_get(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Get match criteria for MPLS TOP Header.
endcode< table >< tr >< th > API</th >< th > Brief</th ></tr >< tr >< td > bcm_l3_nat_ingress_t *nat_info</td >< td > Add an ingress NAT object</td ></tr >< tr >< td > bcm_l3_nat_ingress_t *nat_info</td >< td > Search for a NAT ingress object</td ></tr >< tr >< td > uint32 bcm_l3_nat_ingress_traverse_cb void *user_data</td >< td > Age DNAT or SNAT sessions</td ></tr >< tr >< td > bcm_l3_nat_egress_t * info
Definition: l3.dox:4242
uint32 bcm_field_efes_action_or_mask_t
Definition: field.h:40151
endcode Since this structure is a consolidated structure for managing three different objects the fields in the structure could be mutually exclusive depending on which type of object is being managed The flags field is used to differentiate between these The following flags are defined and the flags field could be a logical or of multiple of these int bcm_l3_nat_ingress_t void * user_data
Definition: l3.dox:4133
int bcm_field_qualify_MplsLabel5Exp(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on MPLS label5 exp value.
int bcm_field_qualify_TrillPayload_get(int unit, bcm_field_entry_t entry, uint64 *data, uint64 *mask)
Get match criteria for TrillPayload qualifier.
int bcm_field_qualify_CopyToCpuReasonLow_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
API to retrieve copy to cpu reason associated to a field entry.
endcode section generic_apis Generic APIs< table >< tr >< th > API</th >< th > Brief</th ></tr >< tr >< td > int enable</td >< td > Enable disable L3 function without clearing any L3 tables</td ></tr >< tr >< td > bcm_l3_intf_t *intf</td >< td > Create a new L3 interface</td ></tr >< tr >< td > bcm_l3_intf_t *intf</td >< td > Search for L3 interface by MAC address and VLAN</td ></tr >< tr >< td > bcm_l3_intf_t *intf</td >< td > Given the L3 interface return the interface information</td ></tr >< tr >< td > bcm_if_t intf_id</td >< td > Detach counter entries to the given L3 egress interface</td ></tr >< tr >< td > bcm_l3_ingress_t bcm_if_t *intf_id</td >< td > Create L3 Ingress Interface object</td ></tr >< tr >< td > bcm_if_t bcm_l3_ingress_t *ing_intf</td >< td > Get an Ingress Interface object</td ></tr >< tr >< td > bcm_l3_ingress_traverse_cb void *user_data</td >< td > Goes through ingress interface objects table and runs the user callback function at each valid ingress object entry passing back the information for that object</td ></tr >< tr >< td > bcm_if_t intf_id</td >< td > Detach counters entries to the given L3 ingress interface</td ></tr >< tr >< td > bcm_if_t bcm_l3_stat_t uint32 num_entries
Definition: l3.dox:2274
int bcm_field_name_to_id(int unit, uint32 flags, bcm_field_name_to_id_info_t *name_to_id_info, int *nof_ids, uint32 *ids)
Map an object name (field group, action, qualifier etc.) to an ID.
int bcm_field_qualify_DstPortSRNetId_get(int unit, bcm_field_entry_t entry, uint8 *net_id, uint8 *mask)
Get match criteria for bcmFieldQualifyDstPortSRNetId.
struct bcm_field_context_hash_config_s bcm_field_context_hash_config_t
bcm_field_sys_hdr_type_e
Definition: field.h:35701
struct bcm_field_group_attach_info_s bcm_field_group_attach_info_t
int bcm_field_qualify_FlowtrackerClassIdSource2_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
To get qualified inputs on Flowtracker Class from Source 2.
int bcm_field_qualify_FlowtrackerExportQueueFull(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Qualifies on the event whether Flowtracker export queue is full.
int bcm_field_qualify_TunnelPayloadOuterVlanId_get(int unit, bcm_field_entry_t entry, bcm_vlan_t *data, bcm_vlan_t *mask)
Get match criteria for bcmFieldQualifyTunnelPayloadOuterVlanId qualifier from the field entry.
int bcm_field_qualify_SRSrcNodeIsSan_get(int unit, bcm_field_entry_t entry, uint8 *data)
Get match criteria for bcmFieldQualifySRSrcNodeIsSan.
bcm_cos_queue_t rqe_cos
Definition: field.h:9104
int bcm_field_qualify_IpTunnelTtl_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyIpTunnelTtl qualifier from the field entry.
int bcm_field_qualify_RxTrapCodeForSnoop_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for RxTrapCodeForSnoop qualifier.
int bcm_field_qualify_InnerSrcMac(int unit, bcm_field_entry_t entry, bcm_mac_t data, bcm_mac_t mask)
Set match criteria for InnerSrcMac qualifier.
int bcm_field_qualify_ExtensionHeaderType_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyExtensionHeaderType qualifier from the field entry.
struct bcm_field_data_packet_format_s bcm_field_data_packet_format_t
int bcm_field_qualify_GbpPresent(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on GBP Presence.
int bcm_field_qualify_ForwardingOuterVlanPri_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyForwardingOuterVlanPri qualifier from the field entry.
int bcm_field_qualify_SrcModuleGport(int unit, bcm_field_entry_t entry, bcm_gport_t data)
Set match criteria for bcmFieldQualifySrcModuleGport qualifier in the field entry.
int bcm_field_qualify_IngressDropEthernetOamControl(int unit, bcm_field_entry_t entry, bcm_field_oam_drop_mep_type_t mep_type)
Set match criteria for bcmFieldQualifyIngressDropEthernetOamControl qualifier in the field entry.
int bcm_field_qualify_L3Routable(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_L3Routable
int bcm_field_qualify_HiGigOffloadEnginePktPriNew_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyHiGigOffloadEnginePktPriNew qualifier from the field entry.
int bcm_field_qualify_HiGigIngressTagged_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyHiGigIngressTagged qualifier from the field entry.
int bcm_field_qualify_NshServicePathId_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Retrieve the match criteria fields for NshServicePathId qualifier associated to a given field entry.
int bcm_field_qualify_GbpSrcId(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
To qualify on GBP source ID.
int bcm_field_qualify_InnerBfdPktVersionOne_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get Inner BFD version one packet qualification from a field entry.
int bcm_field_qualify_MplsTerminatedValue_get(int unit, bcm_field_entry_t entry, uint64 *data, uint64 *mask)
Get match criteria for MplsTerminatedValue qualifier.
int bcm_field_qualify_EgressPortCtrlType(int unit, bcm_field_entry_t entry, bcm_field_egress_port_ctrl_t ctrl_type)
To Qualify on type of the Egress port control.
int bcm_field_action_create(int unit, uint32 flags, bcm_field_action_info_t *action_info, bcm_field_action_t *action_id)
This function create a user defined action, when user wants to use a non-predefined,...
int bcm_field_qualify_Ip6FlowLabel(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
bcm_field_qualify_Ip6FlowLabel
int bcm_field_qualify_PktDstAddrType_get(int unit, bcm_field_entry_t entry, uint32 *dst_addr_type)
Get match criteria for bcmFieldQualifyPktDstAddrType qualifier from the field entry.
bcm_field_vlan_tag_action_e
Definition: field.h:48855
int bcm_field_qualify_IpOptionHdrType(int unit, bcm_field_entry_t entry, bcm_field_ip_option_hdr_type_t type)
API to add Ip option header type to a field entry for qualification.
int bcm_field_qualify_CongestionMarked_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get qualified inputs on Congestion Marked Status.
int bcm_field_qualify_VlanSREnable(int unit, bcm_field_entry_t entry, uint8 data)
Set match criteria for bcmFieldQualifyVlanSREnable.
int bcm_field_qualify_CapwapPayloadInnerVlan(int unit, bcm_field_entry_t entry, bcm_vlan_t data, bcm_vlan_t mask)
Set match criteria for bcmFieldQualifyCapwapPayloadInnerVlan qualifier in the field entry.
int bcm_field_qualify_IpProtocol(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_IpProtocol
int bcm_field_qualify_EgressDOPTrigger_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for Egress DOP Trigger qualifier.
int bcm_field_qualify_DstRpfGport_get(int unit, bcm_field_entry_t entry, bcm_gport_t *data)
Get match criteria for DstRpfGport qualifier.
int bcm_field_qualify_MimlDstMac_get(int unit, bcm_field_entry_t entry, bcm_mac_t *data, bcm_mac_t *mask)
Get match criteria for bcmFieldQualifyMimlDstMac qualifier from the field entry.
struct bcm_field_flush_entry_key_s bcm_field_flush_entry_key_t
int bcm_field_qualify_IntFlags(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for IntFlags qualifier.
int bcm_field_qualify_EthernetOamClassVlanTranslateKeySecond(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyEthernetOamClassVlanTranslateKeySecond.
enum bcm_field_l2_pkt_type_e bcm_field_l2_pkt_type_t
int bcm_field_qualify_FibreChanDFCtl_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyFibreChanDFCtl qualifier from the field entry.
enum bcm_field_drop_reason_e bcm_field_drop_reason_t
int bcm_field_qualify_GpePktWithOam(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Add to match on OAM over Gpe packet qualification to a field entry.
int bcm_field_qualify_VpnUnknownDstMacDstPort_get(int unit, bcm_field_entry_t entry, bcm_gport_t *port_id)
Get match criteria for bcmFieldQualifyVpnUnknownDstMacDstPort qualifier in the field entry.
int bcm_field_range_multi_get(int unit, bcm_field_range_t range_id, int max_count, uint32 *range_flags, uint32 *minimum_value, uint32 *maxamum_value, int *actual_count)
Retrieve parameters associated with an existing multi-range checker.
int bcm_field_entry_install(int unit, bcm_field_entry_t entry)
Install a field entry into the hardware tables.
bcm_field_group_mode_e
Definition: field.h:8775
struct bcm_field_context_hash_info_s bcm_field_context_hash_info_t
int bcm_field_qualify_EgressPktQueueNotification(int unit, bcm_field_entry_t entry, bcm_field_pkt_queue_notif_t type)
API to add Egress pkt queue notification to a field entry for qualification.
int bcm_field_qualify_CopyToCpuReasonHigh(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
API to add copy to cpu reason to a field entry for qualification.
int bcm_field_qualify_DSCP_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyDSCP qualifier from the field entry.
int bcm_field_qualify_Ip6PktTrafficClass_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyIp6PktTrafficClass qualifier from the field entry.
int bcm_field_qualify_FibreChanSrcIdClass(int unit, bcm_field_entry_t entry, bcm_class_t data, bcm_class_t mask)
Configure match criteria for bcmFieldQualifyFibreChanSrcIdClass qualifier from the field entry.
int bcm_field_entry_policer_attach(int unit, bcm_field_entry_t entry_id, int level, bcm_policer_t policer_id)
Attach a policer to a field entry.
Definition: field.h:50106
int bcm_field_qualify_RxTrapCode32(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for RxTrapCode qualifier.
int bcm_field_qualify_FibreChanDstId(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for bcmFieldQualifyFibreChanDstId qualifier in the field entry.
int bcm_field_qualify_CapwapPayloadL4DstPort(int unit, bcm_field_entry_t entry, bcm_l4_port_t data, bcm_l4_port_t mask)
bcm_field_qualify_CapwapPayloadL4DstPort
int bcm_field_direct_extraction_action_add(int unit, bcm_field_entry_t entry, bcm_field_extraction_action_t action, int count, bcm_field_extraction_field_t *extractions)
Add an action to a direct extraction field entry (an entry that is a member of a direct extraction gr...
bcm_cos_queue_t cpu_cos
Definition: field.h:9105
int bcm_field_action_destroy(int unit, bcm_field_action_t action_id)
Destroys an existing user action based.
int bcm_field_qualify_CapwapPayloadSOF_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyCapwapPayloadSOF qualifier from the field entry.
int bcm_field_qualify_InnerVlanRangeMatch_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyInnerVlanRangeMatch qualifier from the field entry.
uint16 dst_class_field
Definition: field.h:30579
int bcm_field_qualify_TimeStampTxPktType_get(int unit, bcm_field_entry_t entry, bcm_field_timestamp_transmit_pkt_type_t *ts_pkt_type)
To get the qualified inputs on Tx Timestamp packet type.
int bcm_field_qualifier_create(int unit, uint32 flags, bcm_field_qualifier_info_create_t *qual_info, bcm_field_qualify_t *qual_id)
This function creates a user defined qualifier, when user wants to use a non-predefined,...
int bcm_field_qualify_IpProtocol_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyIpProtocol qualifier from the field entry.
int bcm_field_qualify_InnerIpType_get(int unit, bcm_field_entry_t entry, bcm_field_IpType_t *type)
Get match criteria for bcmFieldQualifyInnerIpType qualifier from the field entry.
int bcm_field_group_t
Definition: types.h:2915
int bcm_field_qualify_HiGigIngressL3SwitchPkt(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyHiGigIngressL3SwitchPkt qualifier in the field entry.
int bcm_field_qualify_HiGig3Pkt(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for HiGig3 packet.
int bcm_field_qualify_InnerApplSignatureId_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get qualified inputs on Application signature based on Inner Payload.
int bcm_field_qualify_NetworkTagMulticastPkt_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get to match on Network tag (VnTag or Etag) multicast packet qualification from a field entry.
int bcm_field_qualify_EthernetOamInterfaceClassVxlan(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyEthernetOamInterfaceClassVxlan.
int bcm_field_qualify_DstL3MulticastGroup(int unit, bcm_field_entry_t entry, bcm_multicast_t group, bcm_multicast_t mask)
Set match criteria for bcmFieldQualifyDstL3MulticastGroup qualifier in the field entry.
int bcm_field_qualify_IngressDropMplsOamData_get(int unit, bcm_field_entry_t entry, bcm_field_oam_drop_mep_type_t *mep_type)
Get match criteria for bcmFieldQualifyIngressDropMplsOamData qualifier from the field entry.
int bcm_field_qualify_L2CacheHit_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyL2CacheHit qualifier from the field entry.
int bcm_field_qualify_OuterVlanId(int unit, bcm_field_entry_t entry, bcm_vlan_t data, bcm_vlan_t mask)
Set match criteria for bcmFieldQualifyOuterVlanId qualifier in the field entry.
int bcm_field_qualify_IpTunnelTtlClassZero_get(int unit, bcm_field_entry_t entry, bcm_class_t *data, bcm_class_t *mask)
Get match criteria for bcmFieldQualifyIpTunnelTtlClassZero qualifier from the field entry.
int bcm_field_qualify_ExternalValue7(int unit, bcm_field_entry_t entry, uint64 data, uint64 mask)
Set match criteria for bcmFieldQualifyExternalValue7 qualifier in the field entry.
int bcm_field_qualify_L3Ingress_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyL3Ingress qualifier from the field entry.
int bcm_field_qualify_MplsLabel4(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
To qualify on MPLS label4.
int bcm_field_qualify_HeaderFormatExtension(int unit, bcm_field_entry_t entry, bcm_field_header_format_extension_t header_format_extension)
Set match for the header format extension indicated. The profile, out of which header_format_extensio...
int bcm_field_qualify_TxPortType(int unit, bcm_field_entry_t entry, bcm_field_PortType_t port_type)
Add tx port type field qualification to a field entry.
uint32 flags
Definition: field.h:22266
int bcm_field_qualify_IfaAttrOpaqData_get(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Get match criteria for IFA Attribute Opaque data.
Definition: field.h:22265
int bcm_field_qualify_PktType(int unit, bcm_field_entry_t entry, bcm_field_pkt_type_t type)
API to add Packet type to a field entry for qualification.
int bcm_field_group_remove(int unit, bcm_field_group_t group)
Remove all entries of a field group from the hardware table.
int bcm_field_qualify_MplsTerminated(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_MplsTerminated
int bcm_field_qualify_HiGigEgressMcast(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyHiGigEgressMcast qualifier in the field entry.
int bcm_field_group_wlan_create_mode(int unit, bcm_field_qset_t qset, int pri, bcm_field_group_mode_t mode, bcm_field_group_t *group)
Create a field group.
int bcm_field_qualify_GroupClass_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyGroupClass qualifier in the field entry.
int bcm_field_qualify_OpaqueObject3(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
To Qualify on Opaque Object3 which was assigned by Flex modules for example NSH, INT....
int bcm_field_qualify_ForwardingVlanValid_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyForwardingVlanValid qualifier from the field entry.
int bcm_field_qualify_data(int unit, bcm_field_entry_t eid, int qual_id, uint8 *data, uint8 *mask, uint16 length)
Add data field that the packet must match to trigger qualifier.
int nof_entry_actions
Definition: field.h:50159
int bcm_field_qualify_IntCtrl(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
To qualify on Inband telemetry control.
int bcm_field_qualify_L2CacheHit(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_L2CacheHit
bcm_field_aset_t aset
Definition: field.h:9240
bcm_field_egress_flow_control_e
Definition: field.h:42222
int bcm_field_qualify_StaggeredPreselProfile3(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for bcmFieldQualifyStaggeredPreselProfile3.
int bcm_field_qualify_EthernetOamClassVlanTranslateKeyFirst_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyEthernetOamClassVlanTranslateKeyFirst.
int bcm_field_qualify_MplsLabel3_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for MplsLabel3 qualifier.
bcm_field_group_mode_t mode
Definition: field.h:9293
enum bcm_field_PktFwdType_e bcm_field_PktFwdType_t
bcm_field_presel_set_t preselset
Definition: field.h:9241
int bcm_field_qualify_TunnelHeaderSip(int unit, bcm_field_entry_t entry, bcm_ip_t data, bcm_ip_t mask)
Set match criteria for bcmFieldQualifyTunnelHeaderSip qualifier in the field entry.
int bcm_field_qualify_OamDownMEPLoopbackPacket(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyOamDownMEPLoopbackPacket qualifier in the field entry.
int bcm_field_qualify_L5PayloadByte7(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on L5 Payload byte 7.
void bcm_field_hint_t_init(bcm_field_hint_t *hint)
Initialize Field Group Hint structure.
int bcm_field_qualify_IfaHopLimitEqualToZero_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
To get qualified inputs on if IFA metadata header hop limit equals to 0.
int bcm_field_qualify_IngressL2InterfaceOpaqueCtrlId_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyIngressL2InterfaceOpaqueCtrlId qualifier from the field entry.
int bcm_field_entry_dump(int unit, bcm_field_entry_t entry)
Show contents of a field entry.
int bcm_field_qset_id_multi_set(int unit, bcm_field_qualify_t qualifier, int num_objects, int *object_list, bcm_field_qset_t *qset)
Add qualifier objects to field group qset.
int bcm_field_qualify_LearnExtension_get(int unit, bcm_field_entry_t entry, uint8 *data)
Get enable status of LearnExtension qualifier.
bcm_field_presel_t presel_id
Definition: field.h:8580
int bcm_field_qualify_HiGigColor(int unit, bcm_field_entry_t entry, uint8 color)
Set match criteria for bcmFieldQualifyHiGigColor qualifier in the field entry.
int bcm_field_qualify_INTProbeMarker2(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for bcmFieldQualifyINTProbeMarker2 qualifier for a given field entry.
int bcm_field_qualify_HiGigLabel(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for bcmFieldQualifyHiGigLabel qualifier in the field entry.
int action_with_valid_bit[BCM_FIELD_NUMBER_OF_ACTIONS_PER_GROUP]
Definition: field.h:39768
int bcm_field_qualify_InterfaceClassProcessingPort(int unit, bcm_field_entry_t entry, uint64 data, uint64 mask)
Set match criteria for InterfaceClassProcessingPort qualifier.
int bcm_stg_t
Definition: types.h:1688
int bcm_field_qualify_LookupClassField_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get value for bcmFieldQualifyLookupClassField qualifier from the field entry.
int bcm_field_qualify_RoceVer2Pkt(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyRoceVer2Pkt qualifier in the field entry.
bcm_field_oam_drop_mep_type_e
Definition: field.h:5603
int bcm_field_qualify_TunnelSubType_get(int unit, bcm_field_entry_t entry, bcm_field_TunnelSubType_t *type)
Get tunnel sub-type field qualification from a field entry.
int bcm_field_qualify_OamEgressClassVxlt_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get match criteria for bcmFieldQualifyOamEgressClassVxlt.
int bcm_field_qualify_TunnelId(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for bcmFieldQualifyTunnelId qualifier in the field entry.
int bcm_field_qualify_OamTsSystemHeader_get(int unit, bcm_field_entry_t entry, uint64 *data, uint64 *mask)
Get match criteria for OamTsSystemHeader qualifier.
enum bcm_field_orientation_e bcm_field_orientation_t
int bcm_field_qualify_Ip6FlowLabel_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyIp6FlowLabel qualifier from the field entry.
int bcm_field_qualify_L4Info(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Add packet L4 info qualification to a field entry.
int bcm_field_entry_add(int unit, uint32 flags, bcm_field_group_t fg_id, bcm_field_entry_info_t *entry_info, bcm_field_entry_t *entry_handle)
This function creates, sets and installs to HW a single entry (ACL rule) for a specific field group.
int bcm_field_qualify_LoopBackQueue_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyLoopBackQueue qualifier from the field entry.
bcm_field_fem_condition_t fem_condition[BCM_FIELD_NUMBER_OF_CONDITIONS_PER_FEM]
Definition: field.h:40069
int bcm_field_qualify_DstRpfGport(int unit, bcm_field_entry_t entry, bcm_gport_t data)
Set match criteria for DstRpfGport qualifier.
uint32 counter_id
Definition: field.h:9277
int bcm_field_qualify_OverlayIpOptionHdrType(int unit, bcm_field_entry_t entry, bcm_field_ip_option_hdr_type_t type)
API to add overlay Ip option header type to a field entry for qualification.
int bcm_field_qualify_Rtag7CHashLower(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Set match criteria for Rtag7CHashLower qualifier.
int bcm_field_qualify_RangeCheck_get(int unit, bcm_field_entry_t entry, int max_count, bcm_field_range_t *range, int *invert, int *count)
Get match criteria for bcmFieldQualifyRangeCheck qualifier from the field entry.
int bcm_field_qualify_TrillIngressRbridge(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Set match criteria for TrillIngressRbridge qualifier.
int bcm_field_qualify_MirrorOnDrop(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on mirrored copy of MMU dropped packet.
bcm_field_context_key_info_t first_key_info
Definition: field.h:39520
int bcm_field_qualify_ExtensionHeader2Type(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_ExtensionHeader2Type
int bcm_field_qualify_UntagPkt(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on untagged packet.
int bcm_field_qualify_Svtag(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
To qualify on svtag.
int bcm_field_qualify_InnerTos(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_InnerTos
int bcm_field_qualify_DstIpClass_get(int unit, bcm_field_entry_t entry, bcm_class_t *data, bcm_class_t *mask)
Get match criteria for bcmFieldQualifyDstIpClass qualifier from the field entry.
int bcm_field_qualify_MplsLabel4_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get value for bcmFieldQualifyMplsLabel4 qualifier from the field entry.
int bcm_field_group_set(int unit, bcm_field_group_t group, bcm_field_qset_t qset)
Change or retrieve the qualifiers for a field group.
int bcm_field_qualify_TunnelHeaderDstMac(int unit, bcm_field_entry_t entry, bcm_mac_t data, bcm_mac_t mask)
Set match criteria for bcmFieldQualifyTunnelHeaderDstMac qualifier in the field entry.
uint8 transplant_cmd
Definition: field.h:50172
int bcm_field_qualify_SrcNivGports(int unit, bcm_field_entry_t entry, bcm_gport_t niv_port_id, bcm_gport_t niv_port_mask)
bcm_field_qualify_SrcNivGports
int bcm_field_qualify_HiGigEgressMcast_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyHiGigEgressMcast qualifier from the field entry.
int bcm_field_qualify_DstMultipathOverlay(int unit, bcm_field_entry_t entry, bcm_if_t data, bcm_if_t mask)
Add match criteria for bcmFieldQualifyDstMultipathOverlay.
bcm_field_context_compare_type_t compare_2_mode
Definition: field.h:38547
int bcm_field_qualify_HiGig3Flags_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get higig3 packet flags from a field entry.
int bcm_field_qualify_L3SrcRouteHit_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for L3SrcRouteHit qualifier.
int bcm_field_qualify_TunnelPayloadDip6_get(int unit, bcm_field_entry_t entry, bcm_ip6_t *data, bcm_ip6_t *mask)
Get match criteria for bcmFieldQualifyTunnelPayloadDip6 qualifier from the field entry.
int bcm_field_data_qualifier_ethertype_add(int unit, int qual_id, bcm_field_data_ethertype_t *etype)
Add EtherType-based offset to data qualifier object.
int bcm_field_presel_group_t
Definition: field.h:9172
int bcm_field_qualify_Vrf(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
bcm_field_qualify_Vrf
int bcm_field_entry_destroy(int unit, bcm_field_entry_t entry)
Destroy a field entry.
int bcm_field_qualify_L2EgressInterface(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
To qualify on layer2 egress interface(L2_OIF).
int bcm_field_qualify_VxlanHeaderBits56_63(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Qualify Reserved_2 field in Vxlan Header.
int bcm_field_range_destroy(int unit, bcm_field_range_t range)
Destroy a virtual range checker.
int bcm_field_qualify_EthernetOamInterfaceClassPort(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyEthernetOamInterfaceClassPort.
int bcm_field_qualify_udf(int unit, bcm_field_entry_t eid, bcm_udf_id_t udf_id, int length, uint8 *data, uint8 *mask)
Add UDF data that the packet must match to trigger qualifier.
int bcm_field_qualify_NativeVSwitch(int unit, bcm_field_entry_t entry, bcm_vlan_t data, bcm_vlan_t mask)
Set match criteria for NativeVSwitch qualifier.
int bcm_field_qualify_OamMdl(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyOamMdl qualifier from the field entry.
int bcm_trunk_t
Definition: types.h:250
int bcm_field_qualify_MacSecOpaque_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get value for bcmFieldQualifyMacSecOpaque qualifier from the field entry.
int bcm_field_qualify_FlowtrackerClassIdSource2(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
To qualify on Flowtracker Class from Source 2.
int bcm_field_qualify_ForwardingPacketRes_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyForwardingPacketRes qualifier from the field entry.
int bcm_field_qualify_HiGigDstModPortGport(int unit, bcm_field_entry_t entry, bcm_gport_t port_id, bcm_gport_t port_mask)
Set match criteria for bcmFieldQualifyHiGigDstModPortGport qualifier in the field entry.
int bcm_field_qualify_CustomHeaderData(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Configure match criteria for bcmFieldQualifyCustomHeaderData qualifier from the field entry.
int bcm_field_qualify_MplsStationHitTunnelUnterminated(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyMplsStationHitTunnelUnterminated qualifier in the field entry.
bcm_field_interface_class_l2_type_e
Definition: field.h:37038
uint32 bcm_field_hintid_t
Definition: field.h:9005
int bcm_field_qualify_CosQueueNum(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
To qualify on cosq queue number.
int bcm_field_qualify_MplsOamHeaderBits32_63(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for MplsOamHeaderBits32_63 qualifier.
int bcm_field_qualify_DstL2MulticastGroup(int unit, bcm_field_entry_t entry, bcm_multicast_t group, bcm_multicast_t mask)
Set match criteria for bcmFieldQualifyDstL2MulticastGroup qualifier in the field entry.
int bcm_field_qualify_CapwapPayloadDip(int unit, bcm_field_entry_t entry, bcm_ip_t data, bcm_ip_t mask)
bcm_field_qualify_CapwapPayloadDip
int bcm_field_entry_stat_get(int unit, bcm_field_entry_t entry, int *stat_id)
Get statistics entity attached to Field Processor entry.
int bcm_field_qualify_TunnelPayloadDip(int unit, bcm_field_entry_t entry, bcm_ip_t data, bcm_ip_t mask)
Set match criteria for bcmFieldQualifyTunnelPayloadDip qualifier in the field entry.
int bcm_field_entry_hit_get(int unit, uint32 flags, bcm_field_entry_t entry_handle, uint8 *entry_hit_core_bmp)
Get hit indication info for a specific entry per core.
int bcm_field_qualify_IpIdentifier(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
To qualify on IP identifier field available in incoming IP header.
bcm_field_context_compare_modes_t context_compare_modes
Definition: field.h:38556
int bcm_field_qualify_TranslatedInnerVlan(int unit, bcm_field_entry_t entry, bcm_vlan_t data, bcm_vlan_t mask)
Set match criteria for bcmFieldQualifyTranslatedInnerVlan qualifier in the field entry.
int bcm_field_qualify_StaggeredPreselProfile0_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Set match criteria for bcmFieldQualifyStaggeredPreselProfile0_get.
int bcm_field_qualify_MplsOamUpperLabelDataDrop_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyMplsOamUpperLabelDataDrop.
int bcm_field_qualify_TranslatedInnerVlanCfi(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyTranslatedInnerVlanCfi qualifier in the field entry.
int bcm_field_qualify_SnoopCopy(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for SnoopCopy qualifier.
int bcm_field_qualify_FlowtrackerLearn_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
To get the qualified inputs on whether the packet flow is learnt by Flowtracker module.
bcm_field_action_t action
Definition: field.h:8560
int bcm_field_qualify_EgressClassTunnel_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get match criteria for EgressClassTunnel qualifier.
struct bcm_field_extraction_action_s bcm_field_extraction_action_t
bcm_field_stage_t stage
Definition: field.h:4875
int bcm_field_qualify_L2PayloadFirstEightBytes_get(int unit, bcm_field_entry_t entry, uint32 *data1, uint32 *data2, uint32 *mask1, uint32 *mask2)
Get match criteria for bcmFieldQualifyL2PayloadFirstEightBytes qualifier from the field entry.
int bcm_field_qualify_MimSrcGportHit_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for MimSrcGportHit qualifier.
int bcm_field_qualify_PtpTransportSpec_get(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Get match criteria for PTP Transport Spec.
int bcm_field_qualify_HiGigGbpSrcId(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
To qualify on GBP source ID of the HIGIG packet.
bcm_field_flow_control_pkt_type_e
Definition: field.h:8376
int bcm_field_qualify_FibreChanInner_get(int unit, bcm_field_entry_t entry, bcm_field_FibreChan_t *fibre_chan_type)
Get Fibre Channel inner header type field qualification from a field entry.
bcm_field_stage_t stage
Definition: field.h:37918
int bcm_field_qualify_ITag(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for bcmFieldQualifyITag qualifier in the field entry.
int bcm_field_qualify_RxTrapCode(int unit, bcm_field_entry_t entry, bcm_rx_trap_t data)
Set match criteria for RxTrapCode qualifier.
enum bcm_field_egress_flow_encap_e bcm_field_egress_flow_encap_t
int bcm_field_qualify_MimlPkt(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyMimlPkt qualifier in the field entry.
int bcm_field_qualify_clear(int unit, bcm_field_entry_t entry)
Remove all qualifications from a field entry.
bcm_field_TunnelType_e
Definition: field.h:5282
int bcm_field_qualify_InnerIp6HopLimit_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyInnerIp6HopLimit qualifier from the field entry.
int bcm_field_qualify_HiGigDoNotFlags_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyHiGigDoNotFlags qualifier from the field entry.
int bcm_field_qualify_FibreChanVFTVsanPri_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyFibreChanVFTVsanPri qualifier from the field entry.
void bcm_field_extraction_field_t_init(bcm_field_extraction_field_t *action)
Initialize a bcm_field_extraction_field_t.
int bcm_field_range_group_create_id(int unit, bcm_field_range_t range, uint32 flags, bcm_l4_port_t min, bcm_l4_port_t max, bcm_if_group_t group)
Allocate a range checker with specified configuration associated with an interface group.
int bcm_field_qualify_FlowtrackerGroupValid(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Qualifies on event Flowtracker group valid or not.
int bcm_field_qualify_MimVlanCfi(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for MimVlanCfi qualifier.
int bcm_field_qualify_Rtag7CHashLower_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get match criteria for Rtag7CHashLower qualifier.
int bcm_field_qualify_EthernetOamDstClassL2_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyDstClassL2.
int bcm_field_qualify_L4PortRangeCheck(int unit, bcm_field_entry_t entry, bcm_field_range_t range, int invert)
Set match criteria for L4PortRangeCheck qualifier.
int bcm_field_qualify_TosClassOne(int unit, bcm_field_entry_t entry, bcm_class_t data, bcm_class_t mask)
Configure match criteria for bcmFieldQualifyTosClassOne qualifier from the field entry.
int bcm_field_qualify_InVPort32_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyInVPort qualifier from the field entry (32-bits).
int bcm_field_qualify_FlowtrackerClassId(int unit, bcm_field_entry_t entry, int data, int mask)
Qualifies on Classifier ID from Flowtracker group.
int bcm_field_qualify_L3DestRouteHit_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyL3DestRouteHit qualifier from the field entry.
int bcm_field_qualify_EtherTypeClass(int unit, bcm_field_entry_t entry, bcm_class_t data, bcm_class_t mask)
Configure match criteria for bcmFieldQualifyEtherTypeClass qualifier from the field entry.
bcm_field_group_packet_type_e
Definition: field.h:9206
int bcm_field_qualify_OuterL5PayloadByte2(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on Outer L5 Payload byte 2.
int bcm_field_qualify_Ttl_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyTtl qualifier from the field entry.
uint8 bcm_mac_t[6]
Definition: types.h:83
int bcm_field_qualify_VlanAction(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for Vlan Action ID.
int bcm_field_qualify_ForwardingStatus(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
To qualify on packet forwarding status.
int bcm_field_qualify_SampledPkt(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_SampledPkt
int bcm_field_stat_multi_get(int unit, int stat_id, int nstat, bcm_field_stat_t *stat_arr, uint64 *value_arr)
Get 64-bit counter values for multiple statistic types.
int bcm_field_context_compare_destroy(int unit, bcm_field_stage_t stage, bcm_field_context_t context_id, uint32 pair_id)
Destroys the compare keys in the given context.
int bcm_field_qualify_LoopBackCpuMasqueradePktProfile_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyLoopBackCpuMasqueradePktProfile qualifier from the field entry.
bcm_field_action_t action_type
Definition: field.h:38980
int bcm_field_qualify_ExternalValue3(int unit, bcm_field_entry_t entry, uint64 data, uint64 mask)
Set match criteria for bcmFieldQualifyExternalValue3 qualifier in the field entry.
int bcm_field_qualify_EthernetOamDstClassL2(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyDstClassL2.
int bcm_field_qualify_data_get(int unit, bcm_field_entry_t eid, int qual_id, uint16 length_max, uint8 *data, uint8 *mask, uint16 *length)
Get data field that the packet must match to trigger qualifier.
int bcm_field_qualify_MplsForwardingLabelTtl_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for MplsForwardingLabelTtl qualifier.
enum bcm_field_network_tag_type_e bcm_field_network_tag_type_t
int bcm_field_qualify_TunnelPayloadOuterVlanCfi_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyTunnelPayloadOuterVlanCfi qualifier from the field entry.
int bcm_field_qualify_CapwapPayloadOuterVlanCfi_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyCapwapPayloadOuterVlanCfi_get qualifier from the field entry.
_shr_pbmp_t bcm_pbmp_t
Definition: types.h:80
int bcm_field_qualify_FlowId_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get match criteria for bcmFieldQualifyFlowId qualifier from the field entry.
int bcm_field_qualify_Ip6TrafficClass(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_Ip6TrafficClass
int bcm_field_flush_profile_get(int unit, uint32 flags, uint32 flush_profile_id, bcm_field_flush_profile_info_t *flush_profile_info)
Gets a flush profile information.
int bcm_field_qualify_MplsLabel6Bos_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyMplsLabel6Bos qualifier from the field entry.
int bcm_field_qualify_InnerVlanCfi_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyInnerVlanCfi_get qualifier from the field entry.
int bcm_field_qualify_FcoeVersionIsZero_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyFcoeVersionIsZero qualifier from the field entry.
int bcm_field_qualify_EgressClass(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Set match criteria for EgressClass qualifier.
int bcm_field_qualify_HiGigProtectionSwitchingStatus(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyHiGigProtectionSwitchingStatus qualifier in the field entry.
int bcm_field_qualify_DstWlanGports_get(int unit, bcm_field_entry_t entry, bcm_gport_t *wlan_port_id, bcm_gport_t *wlan_port_mask)
Get match criteria for bcmFieldQualifyDstWlanGports qualifier from the field entry.
int bcm_field_resync(int unit)
Invalidate HW FP entries that have not been replayed after warm boot.
int bcm_field_qualify_HiGigColor_get(int unit, bcm_field_entry_t entry, uint8 *color)
Get match criteria for bcmFieldQualifyHiGigColor qualifier in the field entry.
uint32 rp_counter_id
Definition: field.h:9283
int bcm_field_qualify_DosAttack_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyDosAttack qualifier from the field entry.
bcm_field_group_presel_info_t * presel_info
Definition: field.h:9312
int bcm_field_qualify_FibreChanVFTVersion_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyFibreChanVFTVersion qualifier from the field entry.
int bcm_field_qualify_Ip6HopLimit_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyIp6HopLimit qualifier from the field entry.
enum bcm_field_L2Format_e bcm_field_L2Format_t
int bcm_field_qualify_StaggeredPreselProfile2(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for bcmFieldQualifyStaggeredPreselProfile2.
int bcm_field_qualify_NatDstRealmId_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyNatDstRealmId qualifier in the field entry.
int bcm_field_qualify_EgressClassTrill(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Set match criteria for EgressClassTrill qualifier.
int bcm_field_qualify_MimlVlan_get(int unit, bcm_field_entry_t entry, bcm_vlan_t *data, bcm_vlan_t *mask)
Get match criteria for bcmFieldQualifyMimlVlan qualifier from the field entry.
int bcm_field_qualify_TunnelTerminationProcessingProfile(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_TunnelTerminationProcessingProfile
int bcm_field_qualify_TosLower4Bits(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyTosLower4Bits qualifier in the field entry.
int bcm_field_group_config_create(int unit, bcm_field_group_config_t *group_config)
Create a field group with specific attributes.
int bcm_field_qualify_IpTunnelHit_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for IpTunnelHit qualifier.
int bcm_field_qualify_OamInLifIdValid_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for OamInLifIdValid qualifier.
int bcm_field_qualify_OuterVlanRangeMatch_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyOuterVlanRangeMatch qualifier from the field entry.
int bcm_field_qualify_IfaCurrentLengthEqualToZero_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
To get qualified inputs on if IFA metadata header current length equals to 0.
int bcm_field_qualify_MplsForwardingLabelExp(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for MplsForwardingLabelExp qualifier.
int bcm_field_qualify_TranslatedOuterVlan(int unit, bcm_field_entry_t entry, bcm_vlan_t data, bcm_vlan_t mask)
Set match criteria for bcmFieldQualifyTranslatedOuterVlan qualifier in the field entry.
void bcm_field_tcam_bank_info_t_init(bcm_field_tcam_bank_info_t *bank_info)
Initialize the bcm_field_tcam_bank_info_t structure.
int bcm_field_entry_policer_detach(int unit, bcm_field_entry_t entry_id, int level)
Detach a policer from a field entry. When the API is called, the policer is marked as detached but it...
int bcm_field_qualify_InnerIpFrag(int unit, bcm_field_entry_t entry, bcm_field_IpFrag_t frag_info)
bcm_field_qualify_InnerIpFrag
int bcm_field_qualify_InterfaceLookupClassPort(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for bcmFieldQualifyInterfaceLookupClassPort qualifier in the field entry.
int bcm_field_qualify_OamEgressClassVxlt(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Set match criteria for bcmFieldQualifyOamEgressClassVxlt.
int bcm_field_qualify_ExternalHit5_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyExternalHit5 qualifier in the field entry.
int bcm_field_qualify_L4SrcPort_get(int unit, bcm_field_entry_t entry, bcm_l4_port_t *data, bcm_l4_port_t *mask)
Get match criteria for bcmFieldQualifyL4SrcPort qualifier from the field entry.
int bcm_field_group_ports_get(int unit, bcm_field_group_t group, bcm_pbmp_t *pbmp)
Retrieve the bitmap of ports associated with a given field group.
int bcm_field_qualify_InnerEtherType_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get match criteria for InnerEtherType qualifier.
int bcm_field_ace_entry_delete(int unit, uint32 entry_handle)
This function deletes an ACE entry from hardware.
void bcm_field_group_presel_info_init(int nof_presel_info, bcm_field_group_presel_info_t *presel_info)
Initialize Field Group Hw Info structure.
uint32 status_flags
Definition: field.h:9272
int bcm_field_qualify_GenevePktWithOam(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Add to match on OAM over Geneve packet qualification to a field entry.
int bcm_field_qualify_TcpClassZero(int unit, bcm_field_entry_t entry, bcm_class_t data, bcm_class_t mask)
Configure match criteria for bcmFieldQualifyTcpClassZero qualifier from the field entry.
struct bcm_field_flush_entry_qual_s bcm_field_flush_entry_qual_t
int bcm_field_qualify_MplsLabel2Hit_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for MplsLabel2Hit qualifier.
int bcm_field_qualify_ForwardingOuterVlanPri(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyForwardingOuterVlanPri qualifier in the field entry.
void bcm_field_efes_action_info_t_init(bcm_field_efes_action_info_t *efes_action_info)
Initialize the bcm_field_efes_action_info_t structure.
int bcm_field_qualify_OpaqueTagHigh_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
To get the qualified inputs on the higher 32 bits of opaque tag allowed in the system.
int bcm_field_qualify_OamType(int unit, bcm_field_entry_t entry, bcm_field_oam_type_t oam_type)
Set match criteria for bcmFieldQualifyOamType qualifier from the field entry.
struct bcm_field_context_info_s bcm_field_context_info_t
int bcm_field_qualify_IOAMRemainingLenValid(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on In-situ OAM header valid Remaining Length.
bcm_field_redirect_destination_type_t destination_type
Definition: field.h:5904
int bcm_field_qualify_FibreChanSrcId(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for bcmFieldQualifyFibreChanSrcId qualifier in the field entry.
int bcm_field_qualify_TunnelTermStatus_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get value for bcmFieldQualifyTunnelTermStatus qualifier from the field entry.
int bcm_field_qualify_SrcVirtualPortValid(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_SrcVirtualPortValid
int bcm_field_qualify_TunnelType_get(int unit, bcm_field_entry_t entry, bcm_field_TunnelType_t *tunnel_type)
Get tunnel type field qualification from a field entry.
int bcm_field_qualify_ExactMatchHitStatus(int unit, bcm_field_entry_t entry, int group_pri, uint8 data, uint8 mask)
Qualify on Exact Match Hit Status.
int bcm_field_qualify_DstIp(int unit, bcm_field_entry_t entry, bcm_ip_t data, bcm_ip_t mask)
bcm_field_qualify_DstIp
bcm_field_IpFrag_e
Definition: field.h:5448
int bcm_field_qualify_L2GreSrcIpHit(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for L2GreSrcIpHit qualifier.
int bcm_field_qualify_ExtensionHeaderSubCode(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_ExtensionHeaderSubCode
int bcm_field_qualify_MplsLabel4Bos(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on MPLS label4 bos value.
int bcm_field_qualify_NativeVSwitch_get(int unit, bcm_field_entry_t entry, bcm_vlan_t *data, bcm_vlan_t *mask)
Get match criteria for NativeVSwitch qualifier.
int bcm_field_qualify_SrcClassL2(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
bcm_field_qualify_SrcClassL2
int bcm_field_qualify_Container_get(int unit, bcm_field_entry_t entry, uint64 *data, uint64 *mask)
Get match criteria for Container qualifier.
int bcm_field_qualify_Ip6PktHopLimit(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Configure match criteria for bcmFieldQualifyIp6PktHopLimit qualifier for the field entry.
sequence RST and ACK not set</td ></tr >< tr >< td > BCM_FIELD_DOSATTACK_TCP_DSTPORT_ZERO</td >< td > Dos Attack Event when TCP packet with Destination port equals to</td ></tr >< tr >< td > BCM_FIELD_DOSATTACK_TCP_SRCPORT_ZERO</td >< td > Dos Attack Event when TCP packet with Source port equals to</td ></tr >< tr >< td > BCM_FIELD_DOSATTACK_TCP_DST_IP_BCAST</td >< td > Dos Attack Event when TCP Packet with Destination IP Broadcast</td ></tr >< tr >< td > BCM_FIELD_DOSATTACK_TCPFLAGS_ZERO</td >< td > Dos Attack Event when configured TCP flags is zero</td ></tr >< tr >< td > BCM_FIELD_DOSATTACK_TCPFLAGS_RESVD_NONZERO</td >< td > Dos Attack Event when configured Reserved flags is non zero</td ></tr >< tr >< td > BCM_FIELD_DOSATTACK_TCPFLAGS_ACK</td >< td > Dos Attack Event when TCP flag ACK is set and Acknowledge number is zero</td ></tr >< tr >< td > BCM_FIELD_DOSATTACK_TCPFLAGS_URG_NOURGPTR</td >< td > Dos Attack Event when TCP Flag URG set and Urgent pointer is zero</td ></tr >< tr >< td > BCM_FIELD_DOSATTACK_TCPFLAGS_NOURG_URGPTR</td >< td > Dos Attack Event when TCP Flag URG not set and Urgent pointer is not zero</td ></tr >< tr >< td > BCM_FIELD_DOSATTACK_TCPFLAGS_SYNOPTION</td >< td > Dos Attack Event when TCP Flag SYN set and Option same as configured value</td ></tr ></table > subsection fp_policers Policer result usage Policer use options for bcmFieldActionUsePolicerResult< table >< caption > Policer result usage</caption >< tr >< th > Name</th >< th > Purpose</th ></tr >< tr >< td > BCM_FIELD_USE_POLICER_RESULT_INGRESS</td >< td > Use policer result on ingress</td ></tr >< tr >< td > BCM_FIELD_USE_POLICER_RESULT_EGRESS</td >< td > Use policer result on egress</td ></tr ></table > subsection fp_actions Field Actions Many types of actions may be performed on a packet when it matches a filter entry The type bcm_field_action_t is an enumeration of the possible actions Associated with each action are two or three parameters that may be needed by the bcm_field_action_config_add takes three parameters and may take separate parameters per each core Also note that the same action may be interpreted a combination param0
Definition: field.dox:7673
int bcm_field_qualify_SvpOpaqueCtrlId(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on opaque control from SVP table.
int bcm_field_qualify_FcoeVersionIsZero(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyFcoeVersionIsZero qualifier in the field entry.
int bcm_field_qualify_InnerIp6NextHeader_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyInnerIp6NextHeader qualifier from the field entry.
int bcm_field_qualify_DstL3EgressUnderlay_get(int unit, bcm_field_entry_t entry, bcm_if_t *if_id)
Retrieves qualifies inputs on Underlay destination egress next hop.
int bcm_field_qualify_HiGigForwardingType_get(int unit, bcm_field_entry_t entry, bcm_field_HiGigForwardingType_t *type)
Get match criteria for bcmFieldQualifyHiGigForwardingType qualifier from the field entry.
int bcm_field_range_create(int unit, bcm_field_range_t *range, uint32 flags, bcm_l4_port_t min, bcm_l4_port_t max)
Allocate a range checker with specified configuration.
bcm_field_mcast_pkt_reason_e
Definition: field.h:48775
bcm_field_context_compare_type_e
Definition: field.h:38532
int bcm_field_qualify_DstIp6Low_get(int unit, bcm_field_entry_t entry, bcm_ip6_t *data, bcm_ip6_t *mask)
Get match criteria for bcmFieldQualifyDstIp6Low qualifier from the field entry.
int bcm_field_qualify_ExactMatchGroupClassId_get(int unit, bcm_field_entry_t entry, int group_pri, bcm_field_group_t *group)
Get match criteria for ExactMatchGroupClassId qualifier.
int bcm_field_qualify_InnerEtherType(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Set match criteria for InnerEtherType qualifier.
uint8 name[BCM_FIELD_MAX_NAME_LEN]
Definition: field.h:4877
int bcm_field_qualify_MplsLabel3Ttl(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for MplsLabel3Ttl qualifier.
int bcm_field_qualify_Ipv6ExtensionHdrType(int unit, bcm_field_entry_t entry, bcm_field_ip_option_hdr_type_t type)
API to add IPv6 Extension header type to a field entry for qualification.
int bcm_field_qualify_HiGigIntCongestionNotification_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyHiGigIntCongestionNotification qualifier from the field entry.
int bcm_field_qualify_DstMimGport_get(int unit, bcm_field_entry_t entry, bcm_gport_t *mim_port_id)
Get match criteria for bcmFieldQualifyDstMimGport qualifier from the field entry.
struct bcm_field_action_width_s bcm_field_action_width_t
int bcm_field_qualify_VxlanFlags_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyVxlanFlags qualifier in the field entry.
struct bcm_field_header_format_set_s bcm_field_header_format_set_t
int bcm_field_qualify_CapwapHdrType_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyCapwapHdrType qualifier from the field entry.
enum bcm_field_TunnelSubType_e bcm_field_TunnelSubType_t
int bcm_field_qualify_LoopBackSrcGport(int unit, bcm_field_entry_t entry, bcm_gport_t port_id, bcm_gport_t port_mask)
Set match criteria for bcmFieldQualifyLoopBackSrcGport qualifier in the field entry.
int bcm_field_qualify_L4Ports(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_L4Ports
int bcm_field_qualify_IpFlags(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_IpFlags
int bcm_field_data_qualifier_ip_protocol_delete(int unit, int qual_id, bcm_field_data_ip_protocol_t *ip_protocol)
Remove IP protocol based offset from data qualifier object.
enum bcm_field_data_offset_base_e bcm_field_data_offset_base_t
int bcm_field_qualify_DstIp6High(int unit, bcm_field_entry_t entry, bcm_ip6_t data, bcm_ip6_t mask)
bcm_field_qualify_DstIp6High
int bcm_field_qualify_IpInIpPkt(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Add to match on IP in IP packet with zero TTL qualification to a field entry.
bcm_field_entry_action_t entry_action[BCM_FIELD_NUMBER_OF_ACTIONS_PER_GROUP]
Definition: field.h:39840
int bcm_field_qualify_L2SrcHit(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_L2SrcHit
int bcm_field_qualify_CapwapPayloadSip6_get(int unit, bcm_field_entry_t entry, bcm_ip6_t *data, bcm_ip6_t *mask)
Get match criteria for bcmFieldQualifyCapwapPayloadSip6 qualifier from the field entry.
struct bcm_field_data_ip_protocol_s bcm_field_data_ip_protocol_t
int bcm_field_qualify_IEEE1588Encapsulation(int unit, bcm_field_entry_t entry, bcm_field_IEEE1588Encap_t encap)
Set match criteria for field_qualify_IEEE1588Encapsulation.
int bcm_field_qualify_FibreChanSrcFpmaCheck(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyFibreChanSrcFpmaCheck qualifier in the field entry.
int bcm_field_qualify_InterfaceClassMplsLookup3_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
To get the qualified inputs on Class identifier derived from MPLS label 3 entry Lookup.
int bcm_field_qualify_HiGigIngressL3SwitchPkt_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyHiGigIngressL3SwitchPkt qualifier from the field entry.
int bcm_field_qualify_FcoeOxIDClass_get(int unit, bcm_field_entry_t entry, bcm_class_t *data, bcm_class_t *mask)
Get match criteria for bcmFieldQualifyFcoeOxIDClass qualifier from the field entry.
int bcm_field_qualify_VPortRangeCheck(int unit, bcm_field_entry_t entry, bcm_field_range_t range, int invert)
Set match criteria for VPortRangeCheck qualifier.
int bcm_field_qualify_IntPktType(int unit, bcm_field_entry_t entry, bcm_field_int_pkt_type_t type)
Add INT (Inband-Telemetry) Packet type field qualification to a field entry.
int bcm_field_qualify_ExternalValue6(int unit, bcm_field_entry_t entry, uint64 data, uint64 mask)
Set match criteria for bcmFieldQualifyExternalValue6 qualifier in the field entry.
int bcm_field_qualify_ExternalValue7_get(int unit, bcm_field_entry_t entry, uint64 *data, uint64 *mask)
Get match criteria for bcmFieldQualifyExternalValue7 qualifier in the field entry.
void bcm_field_ace_format_info_t_init(bcm_field_ace_format_info_t *ace_format_info)
Initialize the bcm_field_ace_format_info_t structure.
bcm_field_name_to_id_type_e
Definition: field.h:39237
int bcm_field_qualify_MplsCwPresent(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
API to add MPLS Control word present status to a field entry for field qualification.
enum bcm_field_oam_domain_e bcm_field_oam_domain_t
int bcm_field_qualify_EgressTunnelIpHeaderEcn(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for EgressTunnelIpHeaderEcn qualifier.
int bcm_field_qualify_OamUpMep_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for OamUpMep qualifier.
int bcm_field_qualify_IpmcV6Pkt(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
API to add to match on IPMC Ipv6 packet qualification to a field entry.
int bcm_field_qualify_IfaGlobalNameSpace_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
To get qualified inputs on IFA Global Name Space.
int bcm_field_qualify_IngressDropEthernetOamControl_get(int unit, bcm_field_entry_t entry, bcm_field_oam_drop_mep_type_t *mep_type)
Get match criteria for bcmFieldQualifyIngressDropEthernetOamControl qualifier from the field entry.
int bcm_field_qualify_ExternalValue0(int unit, bcm_field_entry_t entry, uint64 data, uint64 mask)
Set match criteria for bcmFieldQualifyExternalValue0 qualifier in the field entry.
struct bcm_field_presel_entry_data_s bcm_field_presel_entry_data_t
bcm_field_hintid_t hintid
Definition: field.h:9246
int bcm_field_stage_slice_info_get(int unit, bcm_field_stage_t stage_id, bcm_pbmp_t pbmp, int slice_no, bcm_field_stage_slice_info_t *slice_info)
The API returns the details of the stage and entries count of the given slice for the given port bitm...
int bcm_field_qualify_TranslatedVlanFormat_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyTranslatedVlanFormat qualifier from the field entry.
int bcm_field_qualify_LoopbackIfaSwitchCopyDrop_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
To get qualified inputs on Loopback header drop indicator for IFA switch probe copy.
int bcm_field_qualify_MplsLabel6Ttl_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyMplsLabel6Ttl qualifier from the field entry.
enum bcm_stat_object_e bcm_stat_object_t
int bcm_field_qualify_EthernetOamHeaderBits32_63_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for EthernetOamHeaderBits32_63.
int bcm_field_qualify_SrcIp6High(int unit, bcm_field_entry_t entry, bcm_ip6_t data, bcm_ip6_t mask)
bcm_field_qualify_SrcIp6High
int bcm_field_qualify_VnTag_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyVnTag qualifier from the field entry.
int bcm_field_qualify_MplsLabel7Id_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get value for bcmFieldQualifyMplsLabel7Id qualifier from the field entry.
int bcm_field_qualify_L3DestRouteValue_get(int unit, bcm_field_entry_t entry, uint64 *data, uint64 *mask)
Get match criteria for L3DestRouteValue qualifier.
int bcm_field_qualify_InnerVlanTagPreserve(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on packets marked for inner vlan tag preserve.
int bcm_field_qualify_MirrorDest(int unit, bcm_field_entry_t entry, bcm_gport_t mirror_gport)
Set match criteria for bcmFieldQualifyMirrorDest.
int bcm_field_qualify_TunnelHeaderSip_get(int unit, bcm_field_entry_t entry, bcm_ip_t *data, bcm_ip_t *mask)
Get match criteria for bcmFieldQualifyTunnelHeaderSip qualifier from the field entry.
int bcm_field_qualify_TafEnable_get(int unit, bcm_field_entry_t entry, uint8 *enable)
Get match criteria for bcmFieldQualifyTafEnable qualifier from the field entry.
int bcm_field_qualify_OpaqueObject3_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
To get the qualified inputs on Opaque Object3 which was assigned by Flex modules for example NSH,...
int bcm_field_stat_all_set(int unit, int stat_id, uint64 value)
Set 64-bit counter value to all counters.
int bcm_field_presel_t
Definition: field.h:8572
struct bcm_field_presel_group_config_s bcm_field_presel_group_config_t
int bcm_field_qualify_NetworkTagType(int unit, bcm_field_entry_t entry, bcm_field_network_tag_type_t type)
API to add network tag type to a field entry for the field qualification.
int bcm_field_qualify_PphType(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_PphType
struct bcm_field_fem_condition_s bcm_field_fem_condition_t
int bcm_field_qualify_GpeReserved1(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for GPE Reserved1 in the field entry.
int bcm_field_qualify_LearnInVPort_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for LearnInVPort qualifier.
int bcm_policer_t
Definition: types.h:159
int bcm_field_qualify_ForwardingEligible(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
To qualify on forwarding eligibility.
bcm_port_encap_t port_encap
Definition: field.h:9070
int bcm_field_group_port_create_mode_id(int unit, bcm_port_t port, bcm_field_qset_t qset, int pri, bcm_field_group_mode_t mode, bcm_field_group_t group)
Create a field group.
int bcm_field_qualify_TunnelAltIpProtocol(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on alternate tunnel ip protocol.
int bcm_field_qualify_L2GreVfiHit_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for L2GreVfiHit qualifier.
int bcm_field_qualify_CapwapPayloadOuterVlan(int unit, bcm_field_entry_t entry, bcm_vlan_t data, bcm_vlan_t mask)
Set match criteria for bcmFieldQualifyCapwapPayloadOuterVlan qualifier in the field entry.
enum bcm_field_vlan_tag_action_e bcm_field_vlan_tag_action_t
bcm_cos_queue_t uc_cos
Definition: field.h:9102
int bcm_field_qualify_IpExtensionHdrNum(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on number of Ip extension headers present in packet.
bcm_field_timestamp_transmit_pkt_type_e
Definition: field.h:8363
int bcm_field_qualify_IngressDropMplsOamControl(int unit, bcm_field_entry_t entry, bcm_field_oam_drop_mep_type_t mep_type)
Set match criteria for bcmFieldQualifyIngressDropMplsOamControl qualifier in the field entry.
int bcm_field_action_vlan_actions_get(int unit, bcm_field_entry_t entry, bcm_field_action_t action, bcm_vlan_action_set_t *vlan_action_set)
Retrieve VLAN actions configured to a field entry.
int bcm_field_qualify_PdelayReq_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
To get qualified inputs on the PDELAY_REQ.
int bcm_field_qualify_TafGateState_get(int unit, bcm_field_entry_t entry, uint8 *state)
Get match criteria for bcmFieldQualifyTafGateState qualifier from the field entry.
int bcm_field_qualify_InnerIpFrag_get(int unit, bcm_field_entry_t entry, bcm_field_IpFrag_t *frag_info)
Get match criteria for bcmFieldQualifyInnerIpFrag qualifier from the field entry.
int bcm_field_qualify_IpExtensionHdrNum_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyIpExtensionHdrNum qualifier from the field entry.
uint32 offset[384]
Definition: field.h:5754
int bcm_field_qset_data_qualifier_add(int unit, bcm_field_qset_t *qset, int qual_id)
Add data/offset qualifier to a group qualifiers set. Use bcm_field_qset_data_qualifier_add API to add...
int bcm_field_qualify_L2SrcDiscard(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on L2 source discard bit.
bcm_field_action_t action_types[BCM_FIELD_NUMBER_OF_ACTIONS_PER_GROUP]
Definition: field.h:37936
int bcm_field_qualify_FibreChanDstIdClassUpper(int unit, bcm_field_entry_t entry, bcm_class_t data, bcm_class_t mask)
Configure match criteria for bcmFieldQualifyFibreChanDstIdClassUpper qualifier from the field entry.
int bcm_field_qualify_EthernetOamClassVlanTranslateKeyFirst(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyEthernetOamClassVlanTranslateKeyFirst.
bcm_field_action_width_flags_e
Definition: field.h:9376
int bcm_field_qualify_SrcVxlanGport(int unit, bcm_field_entry_t entry, bcm_gport_t vxlan_port_id)
bcm_field_qualify_SrcVxlanGport
int bcm_field_qualify_VxlanHeaderBits8_31_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for Reserved_1 field in Vxlan Header.
int bcm_field_qualify_SRNetIdMatched_get(int unit, bcm_field_entry_t entry, uint8 *data)
Get match criteria for bcmFieldQualifySRNetIdMatched.
int bcm_field_qualify_ExternalValue3_get(int unit, bcm_field_entry_t entry, uint64 *data, uint64 *mask)
Get match criteria for bcmFieldQualifyExternalValue3 qualifier in the field entry.
int bcm_field_qualify_MplsLabel7(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
To qualify on MPLS label7.
int bcm_field_sat_macsa_delete(int unit, bcm_mac_t mac)
Delete the class_id associated with given Source MAC Address of SAT packet.
int bcm_field_qualify_DstVlanGports_get(int unit, bcm_field_entry_t entry, bcm_gport_t *vlan_port_id, bcm_gport_t *vlan_port_mask)
Get match criteria for bcmFieldQualifyDstVlanGports qualifier from the field entry.
int bcm_field_qualify_SrcMac(int unit, bcm_field_entry_t entry, bcm_mac_t data, bcm_mac_t mask)
bcm_field_qualify_SrcMac
int bcm_field_qualify_DstMultipathLevel1(int unit, bcm_field_entry_t entry, bcm_if_t data, bcm_if_t mask)
Add match criteria for bcmFieldQualifyDstMultipathLevel1.
bcm_field_input_types_e
Definition: field.h:38746
unsigned int uint32
Definition: types.h:52
int bcm_field_qualify_HiGigDstType(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyHiGigDstType qualifier in the field entry.
int bcm_field_qualify_IcmpTypeCode_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get match criteria for bcmFieldQualifyIcmpTypeCode qualifier from the field entry.
uint8 qual_is_ranged[BCM_FIELD_NUMBER_OF_QUALS_PER_GROUP]
Definition: field.h:37930
int bcm_if_t
Definition: types.h:99
int bcm_field_qualify_TafGateState(int unit, bcm_field_entry_t entry, uint8 state)
Set match criteria for bcmFieldQualifyTafGateState qualifier in the field entry.
int bcm_field_qualify_MyStationHit_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyMyStationHit qualifier from the field entry.
int bcm_field_qualify_IfaFlags(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
To qualify on IFA Flags.
int bcm_field_qualify_RouterAlertLabelValid(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for RouterAlertLabelValid qualifier.
void bcm_field_group_attach_info_t_init(bcm_field_group_attach_info_t *attach_info)
Initialize the bcm_field_group_attach_info_t structure.
int bcm_field_qualify_SrcIp6Class(int unit, bcm_field_entry_t entry, bcm_class_t data, bcm_class_t mask)
Configure match criteria for bcmFieldQualifySrcIp6Class qualifier from the field entry.
int bcm_field_context_compare_info_get(int unit, bcm_field_stage_t stage, bcm_field_context_t context_id, uint32 pair_id, bcm_field_context_compare_info_t *cmp_info)
This function returns information for a specific pair of keys which used for comparison in a given co...
int bcm_field_qualify_CompressionDstHit_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for CompressionDstHit qualifier.
int bcm_field_qualify_TafGateId(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for bcmFieldQualifyTafGateId qualifier in the field entry.
bcm_field_group_type_t fg_type
Definition: field.h:37920
int bcm_field_qualify_HiGigDstGport_get(int unit, bcm_field_entry_t entry, bcm_gport_t *port_id, bcm_gport_t *port_mask)
Get match criteria for bcmFieldQualifyHiGigDstGport qualifier from the field entry.
int bcm_field_qualify_InnerVlan(int unit, bcm_field_entry_t entry, bcm_vlan_t data, bcm_vlan_t mask)
bcm_field_qualify_InnerVlan
int bcm_field_qualify_IgmpMaxRespTime(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for IGMP Max Response time in the field entry.
int bcm_field_stat_destroy(int unit, int stat_id)
Destroy stat collection entity.
int bcm_field_qualify_LoopbackIfaSwitchCopyDrop(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on Loopback header drop indicator for IFA switch probe copy.
int bcm_field_qualify_ArpSrcMac_get(int unit, bcm_field_entry_t entry, bcm_mac_t *data, bcm_mac_t *mask)
Get value for bcmFieldQualifyArpSrcMac qualifier from the field entry.
int bcm_field_qualify_IpProtocolCommon(int unit, bcm_field_entry_t entry, bcm_field_IpProtocolCommon_t protocol)
bcm_field_qualify_IpProtocolCommon
int bcm_field_qualify_MplsTerminatedHit(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for MplsTerminatedHit qualifier.
int bcm_field_group_compress(int unit, bcm_field_group_t group)
Compress field group entries.
struct bcm_field_fem_extraction_output_bit_s bcm_field_fem_extraction_output_bit_t
int bcm_field_qualify_MplsLabel3Exp_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for MplsLabel3Exp qualifier.
int bcm_field_qualify_PktMiscCtrl_get(int unit, bcm_field_entry_t entry, bcm_field_pkt_misc_ctrl_t *pkt_misc_ctrl)
Get match criteria for Packet Misc controls qualifier.
int bcm_field_qualify_LoopbackType(int unit, bcm_field_entry_t entry, bcm_field_LoopbackType_t loopback_type)
Add loopback type field qualification to a field entry.
int bcm_field_qualify_HiGigOffloadEnginePreserveDscp(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyHiGigOffloadEnginePreserveDscp qualifier in the field entry.
int bcm_field_qualify_OpaqueObject1(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
To Qualify on Opaque Object1 which was assigned by Flex modules for example NSH, INT....
int bcm_field_qualify_IntPktLengthValid(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Add to match on INT (Inband-Telemetry) Valid Length Check packet qualification to a field entry.
enum bcm_field_group_oper_mode_e bcm_field_group_oper_mode_t
int bcm_field_qualify_SRDuplicate_get(int unit, bcm_field_entry_t entry, uint8 *data)
Get match criteria for bcmFieldQualifySRDuplicate.
int bcm_field_qualify_LoopBackPacketProcessingPort_get(int unit, bcm_field_entry_t entry, bcm_gport_t *port_id, bcm_gport_t *port_mask)
Get match criteria for bcmFieldQualifyLoopBackPacketProcessingPort qualifier from the field entry.
int bcm_field_qualify_InnerIp6PktTrafficClass_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyInnerIp6PktTrafficClass qualifier from the field entry.
enum bcm_field_group_mode_type_e bcm_field_group_mode_type_t
int bcm_field_qualify_IfaVersion2_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
To get qualified inputs on if IFA version is 2.
enum bcm_field_redirect_type_e bcm_field_redirect_type_t
int bcm_field_qualify_InnerIpProtocol(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_InnerIpProtocol
int bcm_field_qualify_HiGigMulticastIndex(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Set match criteria for bcmFieldQualifyHiGigMulticastIndex qualifier in the field entry.
int bcm_field_qualify_HiGigOffloadEnginePktPriNew(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyHiGigOffloadEnginePktPriNew qualifier in the field entry.
int bcm_field_qualify_FcoeOxID_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get match criteria for bcmFieldQualifyFcoeOxID qualifier from the field entry.
int bcm_field_qualify_MplsOamACH(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for MplsOamACH qualifier.
int bcm_field_qualify_LoopbackLagFailoverPkt(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for Loopback Lag Failover packet.
void bcm_field_class_info_t_init(bcm_field_class_info_t *class_info)
Initialize a bcm_field_class_info_t.
int bcm_field_qualify_MirrorDest_get(int unit, bcm_field_entry_t entry, bcm_gport_t *mirror_gport)
Get match criteria for bcmFieldQualifyMirrorDest.
int bcm_field_group_context_info_get(int unit, bcm_field_group_t fg_id, bcm_field_context_t context_id, bcm_field_group_attach_info_t *attach_info)
This function will get all Group attach info of a specific Field context and Field group.
int bcm_field_qualify_BfdPktWithDstIpLoopbackAddr(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
API to match whether the incoming BFD packet has destination loopback IP Address.
bcm_field_crc_select_t crc_select
Definition: field.h:39482
int bcm_field_qualify_OamEgressClassSrcMac(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for bcmFieldQualifyOamEgressClassSrcMac qualifier in the field entry.
int bcm_field_qualify_InnerIp6PktTrafficClass(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Configure match criteria for bcmFieldQualifyIp6PktTrafficClass qualifier for the field entry.
int bcm_field_qualify_SrcMac_get(int unit, bcm_field_entry_t entry, bcm_mac_t *data, bcm_mac_t *mask)
Get match criteria for bcmFieldQualifySrcMac qualifier from the field entry.
int bcm_field_qualify_MplsLabel5_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get value for bcmFieldQualifyMplsLabel5 qualifier from the field entry.
int bcm_field_qualify_VPortRangeCheck_get(int unit, bcm_field_entry_t entry, int max_count, bcm_field_range_t *range, int *invert, int *count)
Get match criteria for VPortRangeCheck qualifier from the field entry.
enum bcm_field_crc_select_e bcm_field_crc_select_t
int bcm_field_qualify_IpmcStarGroupHit(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_IpmcStarGroupHit
int bcm_field_qualify_L2StationMove_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyL2StationMove qualifier from the field entry.
int bcm_field_qualify_CapwapPayloadOuterVlanPri_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyCapwapPayloadOuterVlanPri qualifier from the field entry.
enum bcm_field_fem_extraction_output_source_type_e bcm_field_fem_extraction_output_source_type_t
int bcm_field_qualify_MplsLabel1Exp_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for MplsLabel1Exp qualifier.
int bcm_field_qualify_DestVirtualPortValid_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyDestVirtualPortValid qualifier from the field entry.
bcm_field_context_hash_action_value_t function_select
Definition: field.h:39479
int bcm_field_qualify_FlowControlType_get(int unit, bcm_field_entry_t entry, bcm_field_flow_control_pkt_type_t *fc_type)
To get qualified inputs on the type of Flow control packet.
int bcm_field_qualify_IngressStpState_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyIngressStpState qualifier from the field entry.
int bcm_field_group_info_get(int unit, bcm_field_group_t fg_id, bcm_field_group_info_t *fg_info)
This function will get all info of a specific Field Group.
int bcm_field_qualify_InterfaceClassL2Type_get(int unit, bcm_field_entry_t entry, bcm_field_interface_class_l2_type_t *type)
Get Interface Class L2 type field qualification from a field entry.
int bcm_field_group_status_get(int unit, bcm_field_group_t group, bcm_field_group_status_t *status)
Retrieve status of a specified field group.
int bcm_field_group_default_entry_set(int unit, bcm_field_group_t group, bcm_field_entry_t entry, int enable)
Set or Clear provided entry as default for group.
int bcm_field_qualify_OuterL5PayloadByte5(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on Outer L5 Payload byte 5.
int bcm_field_qualify_IsEqualValue_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for IsEqualValue qualifier.
int bcm_field_group_ports_add(int unit, bcm_field_group_t group, bcm_pbmp_t pbmp)
Add ports to the specified group.
bcm_field_forward_context_e
Definition: field.h:40561
int bcm_field_qualify_DstClassField_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyDstClassField qualifier from the field entry.
SHR_BITDCL udf_map[_SHR_BITDCLSIZE(BCM_FIELD_USER_NUM_UDFS)]
Definition: field.h:5760
int bcm_field_qualify_HeaderFormat(int unit, bcm_field_entry_t entry, bcm_field_header_format_t header_format)
Set match for the header format indicated. This qualifier is similar to HeaderFormatSet,...
int bcm_field_qualify_MplsForwardingLabelId_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for MplsForwardingLabelId qualifier.
int bcm_field_qualify_IpTunnelTtlClassZero(int unit, bcm_field_entry_t entry, bcm_class_t data, bcm_class_t mask)
Configure match criteria for bcmFieldQualifyIpTunnelTtlClassZero qualifier from the field entry.
int bcm_field_qualify_FrontPanelPkt_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
API to retrieve Front panel packet status of a incoming packet associated to a given field entry.
int bcm_field_qualify_EthernetOamClassVpn_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyEthernetOamInterfaceClassVpn.
int bcm_field_qualify_TrillOpLength_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for TrillOpLength qualifier.
int bcm_field_qualify_ForwardCopy_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for ForwardCopy qualifier.
Definition: field.h:37338
int bcm_field_qualify_MplsLabel1Id(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for MplsLabel1Id qualifier.
int bcm_field_qualify_L3SrcRouteHit(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for L3SrcRouteHit qualifier.
int bcm_field_qualifier_delete(int unit, bcm_field_entry_t entry, bcm_field_qualify_t qual_id)
Remove match criteria from field entry.
int bcm_field_qualify_TafCosProfile_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyTafCosProfile qualifier from the field entry.
int bcm_field_qualify_DstIp6(int unit, bcm_field_entry_t entry, bcm_ip6_t data, bcm_ip6_t mask)
bcm_field_qualify_DstIp6
int bcm_field_qualify_HiGigMplsPkt(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyHiGigMplsPkt qualifier in the field entry.
int bcm_field_qualify_DstIp6_get(int unit, bcm_field_entry_t entry, bcm_ip6_t *data, bcm_ip6_t *mask)
Get match criteria for bcmFieldQualifyDstIp6 qualifier from the field entry.
int bcm_field_qualify_DstIp_get(int unit, bcm_field_entry_t entry, bcm_ip_t *data, bcm_ip_t *mask)
Get match criteria for bcmFieldQualifyDstIp qualifier from the field entry.
bcm_field_HiGigForwardingType_e
Definition: field.h:4999
int bcm_field_qualify_TranslatedInnerVlanCfi_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyTranslatedInnerVlanCfi_get qualifier from the field entry.
int bcm_field_init(int unit)
Initialize field software subsystem.
int bcm_field_qualify_RangeCheckGroup_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyRangeCheckGroup qualifier from the field entry.
int bcm_field_qualify_LearnSrcMac(int unit, bcm_field_entry_t entry, bcm_mac_t data, bcm_mac_t mask)
Set match criteria for LearnSrcMac qualifier.
int bcm_field_qualify_FromMacSecPort(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on packet forwarded through the internal MACSEC port.
int bcm_field_qualify_MplsStationHitTunnelUnterminated_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyMplsStationHitTunnelUnterminated qualifier in the field entry.
int bcm_field_qualify_ForwardingType(int unit, bcm_field_entry_t entry, bcm_field_ForwardingType_t type)
bcm_field_qualify_ForwardingType
int bcm_field_qualify_CapwapPayloadL4DstPort_get(int unit, bcm_field_entry_t entry, bcm_l4_port_t *data, bcm_l4_port_t *mask)
Get match criteria for bcmFieldQualifyCapwapPayloadL4DstPort qualifier from the field entry.
int bcm_field_qualify_OamTsSystemHeader(int unit, bcm_field_entry_t entry, uint64 data, uint64 mask)
Set match criteria for OamTsSystemHeader qualifier.
int bcm_field_oam_stat_action_add(int unit, bcm_field_entry_t entry, bcm_field_oam_stat_action_t *oam_stat_action)
Add Oam Stat Action to the entry.
int bcm_field_qualify_TunnelTerminatedValue_get(int unit, bcm_field_entry_t entry, uint64 *data, uint64 *mask)
Get match criteria for TunnelTerminatedValue qualifier.
int bcm_field_destination_entry_add(int unit, uint32 options, bcm_field_destination_match_t *match, bcm_field_destination_action_t *action)
Add a field destination entry.
int bcm_field_qualify_SRLanId(int unit, bcm_field_entry_t entry, int lan_id)
Set match criteria for bcmFieldQualifySRLanId.
int bcm_field_qualify_GpePktWithOam_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Retreive OAM over Gpe packet qualification from a field entry.
int bcm_field_qualify_FibreChanSrcIdClassMsbNibble(int unit, bcm_field_entry_t entry, bcm_class_t data, bcm_class_t mask)
Configure match criteria for bcmFieldQualifyFibreChanSrcIdClassMsbNibble qualifier from the field ent...
int bcm_field_qualify_InnerDstIp6High(int unit, bcm_field_entry_t entry, bcm_ip6_t data, bcm_ip6_t mask)
bcm_field_qualify_InnerDstIp6High
int bcm_field_qualify_IfaFlags_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
To get qualified inputs on IFA Flags.
int bcm_field_qualify_IntCtrl_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get value for bcmFieldQualifyIntCtrl qualifier from the field entry.
int bcm_field_qualify_DstMultipath(int unit, bcm_field_entry_t entry, bcm_if_t mpintf)
bcm_field_qualify_DstMultipath
int bcm_field_qualify_MplsLabel2Id_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for MplsLabel2Id qualifier.
int bcm_field_qualify_ForwardingEligible_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get value for bcmFieldQualifyForwardingEligible qualifier from the field entry.
int bcm_field_qualify_IpFrag(int unit, bcm_field_entry_t entry, bcm_field_IpFrag_t frag_info)
bcm_field_qualify_IpFrag
int bcm_field_qualify_TunnelTerminatedValue(int unit, bcm_field_entry_t entry, uint64 data, uint64 mask)
Set match criteria for TunnelTerminatedValue qualifier.
int bcm_field_action_add(int unit, bcm_field_entry_t entry, bcm_field_action_t action, uint32 param0, uint32 param1)
Add an action to a field entry.
int bcm_field_qualify_SrcTrunkMemberGport(int unit, bcm_field_entry_t entry, bcm_gport_t data)
Set match criteria for bcmFieldQualifySrcTrunkMemberGport qualifier in the field entry.
int bcm_field_qualify_HiGigIngressClassificationTag(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Set match criteria for bcmFieldQualifyHiGigIngressClassificationTag qualifier in the field entry.
int bcm_field_qualify_MplsLabel6Id_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get value for bcmFieldQualifyMplsLabel6Id qualifier from the field entry.
int bcm_field_qualify_SrcNivGports_get(int unit, bcm_field_entry_t entry, bcm_gport_t *niv_port_id, bcm_gport_t *niv_port_mask)
Get match criteria for bcmFieldQualifySrcNivGports qualifier from the field entry.
int bcm_field_qualify_VlanFormat(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_VlanFormat
int bcm_field_qualify_HiGigOffloadEngineVxltStatus_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyHiGigOffloadEngineVxltStatus qualifier from the field entry.
int bcm_field_qualify_MplsLabel7Bos(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on MPLS label7 bos value.
int bcm_field_qualify_StaggeredDirectValue_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Set match criteria for bcmFieldQualifyStaggeredDirectValue_get.
int bcm_field_qualify_SysHdrType(int unit, bcm_field_entry_t entry, bcm_field_sys_hdr_type_t type)
API to add system header type to a field entry for field qualification.
int bcm_field_qualify_SrcModuleGport_get(int unit, bcm_field_entry_t entry, bcm_gport_t *data)
Get match criteria for bcmFieldQualifySrcModuleGport qualifier from the field entry.
uint32 yp_counter_id
Definition: field.h:9281
int bcm_field_qualify_ProtocolPktOpaqueCtrlId_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyProtocolPktOpaqueCtrlId qualifier from the field entry.
struct bcm_field_group_status_s bcm_field_group_status_t
int bcm_field_compression_index_mapped_get(int unit, bcm_field_compression_map_type_t type, uint16 index, bcm_pbmp_t ports, uint16 *val, uint16 *map_val)
To get the remapped compression values for a particular value at a particular index.
int bcm_field_qualify_SrcIp6Low(int unit, bcm_field_entry_t entry, bcm_ip6_t data, bcm_ip6_t mask)
bcm_field_qualify_SrcIp6Low
int bcm_field_qualify_CapwapPayloadOuterVlanId_get(int unit, bcm_field_entry_t entry, bcm_vlan_t *data, bcm_vlan_t *mask)
Get match criteria for bcmFieldQualifyCapwapPayloadOuterVlanId qualifier from the field entry.
void bcm_field_presel_config_t_init(bcm_field_presel_config_t *presel_config)
Initialize Field Presel Config structure.
int bcm_field_qualify_BypassFilter(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for BypassFilter qualifier (8-bits).
int bcm_field_qualify_McastPkt_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyMcastPkt qualifier from the field entry.
bcm_field_l2_pkt_type_e
Definition: field.h:35958
int bcm_field_qualify_CapwapPayloadDip_get(int unit, bcm_field_entry_t entry, bcm_ip_t *data, bcm_ip_t *mask)
Get match criteria for bcmFieldQualifyCapwapPayloadDip qualifier from the field entry.
int bcm_field_qualify_FibreChanSrcIdClassLower(int unit, bcm_field_entry_t entry, bcm_class_t data, bcm_class_t mask)
Configure match criteria for bcmFieldQualifyFibreChanSrcIdClassLower qualifier from the field entry.
int bcm_field_qualify_PktInnerDstAddrType_get(int unit, bcm_field_entry_t entry, uint32 *dst_addr_type)
Get match criteria for bcmFieldQualifyPktInnerDstAddrType qualifier from the field entry.
struct bcm_field_aset_s bcm_field_aset_t
int bcm_field_qualify_OpaqueTagType(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Qualifies on the tag type configured for opaque tags.
int bcm_field_qualify_CapwapPayloadEtherType_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get match criteria for bcmFieldQualifyCapwapPayloadEtherType qualifier from the field entry.
void bcm_field_group_status_t_init(bcm_field_group_status_t *fgroup)
Initialize the Field Group Status structure.
int bcm_field_qualify_OuterVlanTagPreserve(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on packets marked for outer vlan tag preserve.
int bcm_field_oam_stat_action_delete(int unit, bcm_field_entry_t entry, bcm_field_oam_stat_action_t *oam_stat_action)
Delete Oam Stat Action from entry.
int bcm_field_qualify_CnTag(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
bcm_field_qualify_CnTag
int bcm_field_qualify_DstIp6ClassUpper_get(int unit, bcm_field_entry_t entry, bcm_class_t *data, bcm_class_t *mask)
Get match criteria for bcmFieldQualifyDstIp6ClassUpper qualifier from the field entry.
endcode The flags fields in any of the L3 structures previously defined may take on values which are the logical OR of one or more of the following flags Each individual API function description indicates which flags are pertinent and their associated meanings< table >< caption > BCM Layer Flags</caption >< tr >< th > Name</th >< th > Purpose</th ></tr >< tr >< td > BCM_L3_L2ONLY</td >< td > L2 switch only on interface</td ></tr >< tr >< td > BCM_L3_UNTAG</td >< td > Packet goes out untagged</td ></tr >< tr >< td > BCM_L3_S_HIT</td >< td > Source IP addr match</td ></tr >< tr >< td > BCM_L3_D_HIT</td >< td > Destination IP addr match</td ></tr >< tr >< td > BCM_L3_HIT</td >< td > Source or destination IP address match</td ></tr >< tr >< td > BCM_L3_HIT_CLEAR</td >< td > Clear HIT bit</td ></tr >< tr >< td > BCM_L3_ADD_TO_ARL</td >< td > Add intf address MAC to ARL</td ></tr >< tr >< td > BCM_L3_WITH_ID</td >< td > Request a specific ID number in a create call</td ></tr >< tr >< td > BCM_L3_NEGATE</td >< td > Negate a condition such as L3 interface match</td ></tr >< tr >< td > BCM_L3_INGRESS_ONLY</td >< td > Configure ingress objects only</td ></tr >< tr >< td > BCM_L3_REPLACE</td >< td > Replace existing if it exists</td ></tr >< tr >< td > BCM_L3_TGID</td >< td > Port belongs to trunk</td ></tr >< tr >< td > BCM_L3_OVERLAY_ENCAP</td >< td > LL used for overlay LL for intra DC routed packets</td ></tr >< tr >< td > BCM_L3_RPE</td >< td > Pick up new StrataXGS I StrataXGS used for nativ Ethernet for intra DC routed packets</td ></tr >< tr >< td > BCM_L3_DEFIP_CPU</td >< td > only if the MPLS Label in Route Entry is not a SWAP Label</td ></tr >< tr >< td > BCM_L3_COPY_TO_CPU</td >< td > Send frame copy to</td ></tr >< tr >< td > BCM_L3_KEEP_SRCMAC</td >< td > Disable SA replacement for L3UC packets</td ></tr >< tr >< td > BCM_L3_KEEP_DSTMAC</td >< td > Disable DA replacement for L3UC packets</td ></tr >< tr >< td > BCM_L3_KEEP_VLAN</td >< td > Disable VLAN replacement for L3UC packets</td ></tr >< tr >< td > BCM_L3_KEEP_TTL</td >< td > Disable IP TTL replacement for L3UC packet flow and disable MPLS TTL replacement for MPLS packet flow</td ></tr >< tr >< td > BCM_L3_TRILL_ONLY</td >< td > TRILL specific NextHop entry</td ></tr >< tr >< td > BCM_L3_L2GRE_ONLY</td >< td > L2GRE specific NextHop entry</td ></tr >< tr >< td > BCM_L3_DEREFERENCED_NEXTHOP</td >< td > Indicates on packet egressing HiGig Fabric port</td ></tr >< tr >< td > BCM_L3_FLAGS2_FIELD_ONLY</td >< td > When L3 egress objects are created with this flag
Definition: l3.dox:1503
int bcm_field_qualify_IEEE1588Command_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for field_qualify_IEEE1588Command_get.
int bcm_field_stat_set(int unit, int stat_id, bcm_field_stat_t stat, uint64 value)
Set 64-bit counter value for specific statistic type.
int bcm_field_qualify_RoceBthFlags_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyRoceBthFlags qualifier in the field entry.
int bcm_field_qualify_InVportDataIndex(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyInVportDataIndex qualifier in the field entry.
int bcm_field_qualify_SrcVxlanGports(int unit, bcm_field_entry_t entry, bcm_gport_t vxlan_port_id, bcm_gport_t vxlan_port_mask)
bcm_field_qualify_SrcVxlanGports
int bcm_field_destination_stat_id_get(int unit, bcm_field_destination_match_t *match, uint32 *stat_counter_id)
Get the statistic counter ID attached to a field destination entry.
int bcm_field_qualify_PacketLength_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get match criteria for bcmFieldQualifyPacketLength qualifier from the field entry.
enum bcm_field_loopback_subtype_e bcm_field_loopback_subtype_t
int bcm_field_group_action_offset_get(int unit, uint32 flags, bcm_field_group_t fg_id, bcm_field_action_t action, int *offset)
Get the offset of the action in the action payload.
int bcm_field_qualify_HiGigIngressTagged(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyHiGigIngressTagged qualifier in the field entry.
bcm_core_t core
Definition: field.h:39058
int bcm_field_qualify_ArpDstMac(int unit, bcm_field_entry_t entry, bcm_mac_t data, bcm_mac_t mask)
To qualify on destination mac of Arp/Rarp packet.
int bcm_field_qualify_IntHdrType(int unit, bcm_field_entry_t entry, bcm_field_IntHdr_Type_t int_type)
Set match criteria for IntHdrType qualifier.
int bcm_field_qualify_GpeReserved0_get(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Get match criteria for GPE Reserved0.
int bcm_field_qualify_LearnSrcMac_get(int unit, bcm_field_entry_t entry, bcm_mac_t *data, bcm_mac_t *mask)
Get match criteria for LearnSrcMac qualifier.
int bcm_field_qualify_InnerTtl_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyInnerTtl qualifier from the field entry.
int bcm_field_qualify_OpaqueObject1_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
To get the qualified inputs on Opaque Object1 which was assigned by Flex modules for example NSH,...
void bcm_field_destination_match_t_init(bcm_field_destination_match_t *match)
Initialize the field destination match structure.
int bcm_field_qualify_SrcMplsGports(int unit, bcm_field_entry_t entry, bcm_gport_t mpls_port_id, bcm_gport_t mpls_port_mask)
bcm_field_qualify_SrcMplsGports
int bcm_field_qualify_InDscpExp_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyInDscpExp qualifier from the field entry.
int bcm_field_group_create(int unit, bcm_field_qset_t qset, int pri, bcm_field_group_t *group)
Create a field group.
int bcm_field_qualify_EthernetOamInterfaceClassMim(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyEthernetOamInterfaceClassMim.
bcm_field_IpType_e
Definition: field.h:5356
bcm_field_group_mode_type_e
Definition: field.h:9179
int bcm_field_qualify_L5PayloadByte6_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyL5PayloadByte6 qualifier from the field entry.
int bcm_field_qualify_PacketRes(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
bcm_field_qualify_PacketRes
int bcm_field_qualify_SrcIpClassLower(int unit, bcm_field_entry_t entry, bcm_class_t data, bcm_class_t mask)
Configure match criteria for bcmFieldQualifySrcIpClassLower qualifier from the field entry.
int bcm_field_qualify_FibreChanDstIdClassUpper_get(int unit, bcm_field_entry_t entry, bcm_class_t *data, bcm_class_t *mask)
Get match criteria for bcmFieldQualifyFibreChanDstIdClassUpper qualifier from the field entry.
int bcm_field_qualify_MplsLabel6_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get value for bcmFieldQualifyMplsLabel6 qualifier from the field entry.
int bcm_field_qualify_OuterL5PayloadByte4_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyOuterL5PayloadByte4 qualifier from the field entry.
void bcm_field_presel_group_config_t_init(bcm_field_presel_group_config_t *group_config)
Initialize Field Presel Group Config structure.
int bcm_field_entry_enable_get(int unit, bcm_field_entry_t entry, int *enable_flag)
Get the Enable or Disable status of a field Entry.
int bcm_field_qualify_IEEE1588Encapsulation_get(int unit, bcm_field_entry_t entry, bcm_field_IEEE1588Encap_t *encap)
Get match criteria for field_qualify_IEEE1588Encapsulation_get.
int bcm_field_qualify_PacketSize(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for PacketSize qualifier.
int field_presel_staggered_max_id
Definition: field.h:4858
int bcm_field_qualify_GpeProtocol_get(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Get match criteria for GPE Protocol.
int bcm_field_qualify_IpFragNonOrFirst_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyIpFragNonOrFirst qualifier from the field entry.
int bcm_field_qualify_InVPortWide(int unit, bcm_field_entry_t entry, uint64 data, uint64 mask)
Configure match criteria for bcmFieldQualifyInVPortWide qualifier from the field entry.
int bcm_field_action_class_add(int unit, bcm_field_entry_t entry, bcm_field_class_info_t *class_info)
Add an action to a field class entry (an entry that is a member of a compression stage).
struct bcm_field_action_core_config_s bcm_field_action_core_config_t
int bcm_field_qualify_SrcIp6ClassUpper(int unit, bcm_field_entry_t entry, bcm_class_t data, bcm_class_t mask)
Configure match criteria for bcmFieldQualifySrcIp6ClassUpper qualifier from the field entry.
void bcm_field_data_qualifier_t_init(bcm_field_data_qualifier_t *data_qual)
Initialize the bcm_field_data_qualifier_s structure.
enum bcm_field_sr_port_mode_e bcm_field_sr_port_mode_t
int bcm_field_qualify_SRDuplicate(int unit, bcm_field_entry_t entry, uint8 data)
Set match criteria for bcmFieldQualifySRDuplicate.
bcm_field_pkt_type_e
Definition: field.h:36015
int bcm_field_qualify_MplsLabel1Ttl_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for MplsLabel1Ttl qualifier.
int bcm_field_data_qualifier_destroy_all(int unit)
Destroy all data/offset-based qualifiers.
int bcm_field_entry_hit_flush(int unit, uint32 flags, bcm_field_entry_t entry_handle)
This function flushes hit information of an entry or all entries, from hardware.
int bcm_field_qualify_CapwapHdrRid(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyCapwapHdrRid qualifier in the field entry.
int bcm_field_range_type_config_set(int unit, uint32 flags, bcm_field_stage_t stage, bcm_field_context_t context_id, uint32 configurable_range_index, bcm_field_range_qual_info_t *range_qualifier_info)
Configures the L4 OPS Extended FFCs.
int bcm_field_qualify_FlowControlType(int unit, bcm_field_entry_t entry, bcm_field_flow_control_pkt_type_t fc_type)
To qualify on the type of Flow control packet.
int bcm_field_qualify_INTReserved4Bytes_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyINTReserved4Bytes qualifier for a given field entry.
bcm_field_double_action_vals_e
Definition: field.h:8424
int bcm_field_qualify_PktFlowType_get(int unit, bcm_field_entry_t entry, bcm_field_pkt_flow_type_t *type)
To get the qualified inputs on Pkt Flow Type.
int bcm_field_qualify_IsEqualValue(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for IsEqualValue qualifier.
int bcm_field_qualify_UntagPkt_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyUntagPkt qualifier from the field entry.
int bcm_field_qualify_IntPktFinalHop(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Add to match on INT (Inband-Telemetry) Maximum Hop Limit Check packet qualification to a field entry.
int bcm_field_qualify_OamEgressClass2Vxlt_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyOamEgressClass2Vxlt qualifier from the field entry.
int nof_entry_quals
Definition: field.h:39049
int bcm_field_qualify_HiGigOffloadEnginePreserveDot1p_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyHiGigOffloadEnginePreserveDot1p qualifier from the field entry.
int bcm_field_qualify_DstTrunk_get(int unit, bcm_field_entry_t entry, bcm_trunk_t *data, bcm_trunk_t *mask)
Get match criteria for bcmFieldQualifyDstTrunk qualifier from the field entry.
int bcm_field_qualify_InnerIp6NextHeader(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_InnerIp6NextHeader
enum bcm_field_olp_header_type_e bcm_field_olp_header_type_t
int bcm_field_qualify_MplsLabel3Id(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for MplsLabel3Id qualifier.
bcm_field_header_format_e
Definition: field.h:1207
int bcm_field_qualify_Llc_get(int unit, bcm_field_entry_t entry, bcm_field_llc_header_t *data, bcm_field_llc_header_t *mask)
Get match criteria for bcmFieldQualifyLlc qualifier from the field entry.
int bcm_field_qualify_InterfaceClassL3(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
bcm_field_qualify_InterfaceClassL3
int bcm_field_qualify_HiGig3Flags(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Add HiGig3 packet flags qualification to a field entry.
int bcm_field_qualify_SrcIp6ClassUpper_get(int unit, bcm_field_entry_t entry, bcm_class_t *data, bcm_class_t *mask)
Get match criteria for bcmFieldQualifySrcIp6ClassUpper qualifier from the field entry.
int bcm_field_data_qualifier_packet_format_delete(int unit, int qual_id, bcm_field_data_packet_format_t *packet_format)
Delete packet format-based offset from data qualifier object.
int bcm_field_qualify_FibreChanRCtl_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyFibreChanRCtl qualifier from the field entry.
int bcm_field_qualify_IpTtlZeroPkt(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Add to match on IP packet with zero TTL qualification to a field entry.
int bcm_field_qualify_TrunkMemberSourceModuleId(int unit, bcm_field_entry_t entry, int data, int mask)
Set match criteria for bcmFieldQualifyTrunkMemberSourceModuleId qualifier in the field entry.
int bcm_field_qualify_EgressClassWlan_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get match criteria for EgressClassWlan qualifier.
int bcm_field_qualify_SRNetId(int unit, bcm_field_entry_t entry, int net_id)
Set match criteria for bcmFieldQualifySRNetId.
int bcm_field_qualify_CopyToCpu_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyCopyToCpu qualifier from the field entry.
int bcm_field_destination_stat_detach(int unit, bcm_field_destination_match_t *match)
Detach the statistic counter ID attached to a field destination entry.
int bcm_field_qualify_InterfaceClassMplsLookup2_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
To get the qualified inputs on Class identifier derived from MPLS label 2 entry Lookup.
int bcm_field_qualify_SrcPort_get(int unit, bcm_field_entry_t entry, bcm_module_t *data_modid, bcm_module_t *mask_modid, bcm_port_t *data_port, bcm_port_t *mask_port)
Get match criteria for bcmFieldQualifySrcPort qualifier from the field entry.
int bcm_field_stat_id_get(int unit, bcm_field_group_t group, uint32 stat_id, uint32 *stat_counter_id)
Get flex stat counter ID associated with given field group and its associated stats ID.
int bcm_field_qualify_MplsOamHeaderBits0_31(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for MplsOamHeaderBits0_31.
int bcm_field_qualify_MirrorPktType(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
To qualify on mirror packet type.
bcm_field_pkt_flow_type_e
Definition: field.h:41485
bcm_field_fem_extraction_t fem_extraction[BCM_FIELD_NUMBER_OF_EXTRACTIONS_PER_FEM]
Definition: field.h:40072
int bcm_field_qualify_PktFwdType(int unit, bcm_field_entry_t entry, bcm_field_PktFwdType_t type)
Add packet forward type field qualification to a field entry.
enum bcm_field_flow_timestamp_source_e bcm_field_flow_timestamp_source_t
int bcm_field_qualify_IpFwdPlusOneNextProtocol(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Qualify IP forward plus one next protocol.
int bcm_field_qualify_DstIp6ClassLower(int unit, bcm_field_entry_t entry, bcm_class_t data, bcm_class_t mask)
Configure match criteria for bcmFieldQualifyDstIp6ClassLower qualifier from the field entry.
int bcm_field_qualify_SrcIpClass(int unit, bcm_field_entry_t entry, bcm_class_t data, bcm_class_t mask)
Configure match criteria for bcmFieldQualifySrcIpClass qualifier from the field entry.
int bcm_field_qualify_MplsForwardingLabelBos(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for MplsForwardingLabelBos qualifier.
int bcm_field_qualify_Color_get(int unit, bcm_field_entry_t entry, uint8 *color)
Get match criteria for bcmFieldQualifyColor qualifier from the field entry.
int bcm_field_qualify_EthernetOamInterfaceClassVxlan_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyEthernetOamInterfaceClassVxlan.
int bcm_field_qualify_L2IngressInterface(int unit, bcm_field_entry_t entry, uint32 intf_id, uint32 mask)
bcm_field_qualify_L2IngressInterface
bcm_field_start_packet_strip_e
Definition: field.h:24462
int bcm_field_qualify_RxPortType(int unit, bcm_field_entry_t entry, bcm_field_PortType_t port_type)
Add rx port type field qualification to a field entry.
struct bcm_field_name_to_id_info_s bcm_field_name_to_id_info_t
int bcm_field_data_qualifier_ethertype_delete(int unit, int qual_id, bcm_field_data_ethertype_t *etype)
Remove EtherType-based offset from data qualifier object.
struct bcm_field_snap_header_s bcm_field_snap_header_t
int bcm_field_qualify_ArpDstMac_get(int unit, bcm_field_entry_t entry, bcm_mac_t *data, bcm_mac_t *mask)
Get value for bcmFieldQualifyArpDstMac qualifier from the field entry.
int bcm_field_qualify_MHOpcode(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_MHOpcode
int bcm_field_qualify_StaggeredValue3(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for bcmFieldQualifyStaggeredValue3.
int bcm_gport_t
Definition: types.h:262
int bcm_field_qualify_TunnelHeaderSrcMac(int unit, bcm_field_entry_t entry, bcm_mac_t data, bcm_mac_t mask)
Set match criteria for bcmFieldQualifyTunnelHeaderSrcMac qualifier in the field entry.
int bcm_field_qualify_FibreChanOuter(int unit, bcm_field_entry_t entry, bcm_field_FibreChan_t fibre_chan_type)
Add Fibre Channel outer header type field qualification to a field entry.
int bcm_field_qualify_CapwapPayloadL3HdrParseable_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyCapwapPayloadL3HdrParseable_get qualifier from the field entry.
_shr_port_encap_t bcm_port_encap_t
Definition: port.h:6236
int bcm_field_qualify_IpmcV4Pkt(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
API to add to match on IPMC Ipv4 packet qualification to a field entry.
enum bcm_field_control_e bcm_field_control_t
int bcm_field_qualify_LastIpProtocol(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on forwarding header last ip protocol value.
int bcm_field_qualify_IngressL2InterfaceFlexDigestCtrlIdA(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on flex digest control id A from L2_IIF table.
int bcm_field_qualify_L2MacInfo(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Add packet mac validations qualification to a field entry.
int bcm_field_group_mode_qset_get(int unit, bcm_field_group_mode_type_t mode_type, bcm_field_group_packet_type_t packet_type, bcm_field_qset_t *qset)
Fetch qset details for a mode and packet type.
int bcm_field_qualify_InterfaceClassVPort(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for InterfaceClassVPort qualifier.
int bcm_field_qualify_TunnelAltIpProtocol_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyTunnelAltIpProtocol qualifier from the field entry.
enum bcm_field_pkt_queue_notif_e bcm_field_pkt_queue_notif_t
struct bcm_field_range_qual_info_s bcm_field_range_qual_info_t
int bcm_field_qualify_OuterL5PayloadByte6_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyOuterL5PayloadByte6 qualifier from the field entry.
int bcm_field_stat_attach(int unit, bcm_field_group_t group, uint32 stat_counter_id, uint32 *stat_id)
Attach counters entries to a field group.
int bcm_field_qualify_TunnelPayloadOuterVlanCfi(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyTunnelPayloadOuterVlanCfi qualifier in the field entry.
int bcm_field_qualify_IpmcHit(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for IpmcHit qualifier.
int bcm_field_qualify_ExternalHit3_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyExternalHit3 qualifier in the field entry.
enum bcm_field_hint_type_e bcm_field_hint_type_t
int bcm_field_qualify_InnerSrcIp6High_get(int unit, bcm_field_entry_t entry, bcm_ip6_t *data, bcm_ip6_t *mask)
Get match criteria for bcmFieldQualifyInnerSrcIp6High qualifier from the field entry.
int bcm_field_qualify_HiGigReplicationId_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyHiGigReplicationId qualifier from the field entry.
int bcm_field_qualify_MirrorCopy(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_MirrorCopy
int bcm_field_qualify_TunnelAltSrcIp_get(int unit, bcm_field_entry_t entry, bcm_ip_t *data, bcm_ip_t *mask)
Get value for bcmFieldQualifyTunnelAltSrcIp qualifier from the field entry.
int bcm_field_qualify_DstMultipathOverlay_get(int unit, bcm_field_entry_t entry, bcm_if_t *data, bcm_if_t *mask)
Get match criteria for ECMP groups with Overlay flag.
enum bcm_field_tcam_bank_allocation_mode_e bcm_field_tcam_bank_allocation_mode_t
int bcm_field_ace_entry_info_get(int unit, uint32 entry_handle, bcm_field_ace_entry_info_t *entry_info)
This function retrieves the entry information of a specific ACE Format ID.
int bcm_field_qualify_ApplSignatureId_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get qualified inputs on Application signature.
int bcm_field_qualify_InterfaceClassL3Tunnel_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
To get the qualified inputs on Class identifier derived from L3 Tunnel.
int bcm_field_qualify_MplsLabel4Ttl(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on MPLS label4 ttl value.
int bcm_field_qualify_HiGigDstMulticast_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyHiGigDstMulticast qualifier from the field entry.
enum bcm_field_interface_class_l2_type_e bcm_field_interface_class_l2_type_t
enum bcm_field_action_e bcm_field_action_t
int bcm_field_qualify_SysHdrLocalDstport_get(int unit, bcm_field_entry_t entry, bcm_port_t *data, bcm_port_t *mask)
To get qualified inputs on System Header Local Destination port.
int bcm_field_qualify_IngressL3InterfaceOpaqueCtrlId(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on opaque control from L3_IIF table.
int bcm_field_action_copytocpu_config_get(int unit, bcm_field_entry_t entry, bcm_field_CopyToCpu_config_t *CopyToCpu_config)
Gets the configured copy to CPU action parameters to Copy To CPU Field Config structure.
int bcm_field_qualify_MplsLabel4Ttl_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyMplsLabel4Ttl qualifier from the field entry.
uint32 max_values
Definition: field.h:27177
int bcm_field_qualify_TcpControl(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_TcpControl
int bcm_field_stat_sync_get32(int unit, int stat_id, bcm_field_stat_t stat, uint32 *value)
Force an immediate counter update and retrieve specific statistic type. Get 32-bit counter value for ...
int bcm_field_qualify_DstPortSRMode_get(int unit, bcm_field_entry_t entry, bcm_field_sr_port_mode_t *type, uint8 *mask)
Get match criteria for bcmFieldQualifyDstPortSRMode.
int bcm_field_qualify_DosAttack(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_DosAttack
int bcm_field_qualify_DstL3EgressNextHopsUnderlay_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Retrieves qualifies inputs on range of Underlay destination egress next hops.
int bcm_field_destination_entry_delete(int unit, bcm_field_destination_match_t *match)
Delete a field destination entry.
int bcm_field_qualify_HiGigReplicationId(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for bcmFieldQualifyHiGigReplicationId qualifier in the field entry.
int bcm_field_action_cont_info_get(int unit, bcm_field_stage_t stage, bcm_field_action_t action, uint8 max_ct, uint16 *cont_id_arr, uint16 *cont_sz_arr, uint8 *actual_ct, uint8 *action_size)
The API retrieves the allocated container ID information in cont_id_arr and the size of each containe...
uint8 valid_bit_value
Definition: field.h:50126
int bcm_field_qualify_MplsTerminatedHit_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for MplsTerminatedHit qualifier.
int bcm_field_group_priority_get(int unit, bcm_field_group_t group, int *priority)
Extract priority for a group.
int bcm_field_qualifier_info_get(int unit, bcm_field_qualify_t qual_id, bcm_field_stage_t stage, bcm_field_qualifier_info_get_t *qual_info)
This function gets all information of a qualifier.
int bcm_field_qualify_DstPortSRLanId_get(int unit, bcm_field_entry_t entry, uint8 *lan_id)
Get match criteria for bcmFieldQualifyDstPortSRLanId.
int bcm_field_qualify_HiGigLabel_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyHiGigLabel qualifier from the field entry.
int bcm_field_qualify_TunnelPayloadL4SrcPort_get(int unit, bcm_field_entry_t entry, bcm_l4_port_t *data, bcm_l4_port_t *mask)
Get match criteria for bcmFieldQualifyTunnelPayloadL4SrcPort qualifier from the field entry.
uint32 intf_class_vport
Definition: field.h:30585
bcm_field_app_db_e
Definition: field.h:39671
int bcm_field_qualify_TranslatedInnerVlan_get(int unit, bcm_field_entry_t entry, bcm_vlan_t *data, bcm_vlan_t *mask)
Get match criteria for bcmFieldQualifyTranslatedInnerVlan qualifier from the field entry.
int bcm_field_qualify_FirstDropReason(int unit, bcm_field_entry_t entry, bcm_field_drop_reason_t type)
API to add First Drop reason to a field entry for qualification.
bcm_field_entry_qual_t entry_qual[BCM_FIELD_NUMBER_OF_QUALS_PER_GROUP]
Definition: field.h:39051
bcm_field_qualify_t qual
Definition: field.h:9040
bcm_field_stage_e
Definition: field.h:4801
enum bcm_field_sr_supervision_type_e bcm_field_sr_supervision_type_t
int bcm_field_qualify_FlowtrackerFlowTableFull(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Qualifies on the Flowtracker event whether the flow table is full.
int bcm_field_qualify_OamDownMEPLoopbackPacket_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyOamDownMEPLoopbackPacket qualifier from the field entry.
int bcm_field_qualify_VlanTranslationHit_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyVlanTranslationHit qualifier from the field entry.
int action_with_valid_bit[BCM_FIELD_NUMBER_OF_ACTIONS_PER_GROUP]
Definition: field.h:37938
int bcm_field_qualify_InnerSrcIp6High(int unit, bcm_field_entry_t entry, bcm_ip6_t data, bcm_ip6_t mask)
bcm_field_qualify_InnerSrcIp6High
enum bcm_field_roe_frame_type_e bcm_field_roe_frame_type_t
int bcm_field_qualify_StaggeredPreselProfile0(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for bcmFieldQualifyStaggeredPreselProfile0.
enum bcm_field_TunnelType_e bcm_field_TunnelType_t
int bcm_field_qualify_MimlVlanCfi_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyMimlVlanCfi_get qualifier from the field entry.
int bcm_field_qualify_L4DstPort_get(int unit, bcm_field_entry_t entry, bcm_l4_port_t *data, bcm_l4_port_t *mask)
Get match criteria for bcmFieldQualifyL4DstPort qualifier from the field entry.
int bcm_field_qualify_TranslatedInnerVlanPri(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyTranslatedInnerVlanPri qualifier in the field entry.
int bcm_field_qualify_TunnelAltDstIp6(int unit, bcm_field_entry_t entry, bcm_ip6_t data, bcm_ip6_t mask)
To qualify on alternate tunnel destination Ipv6.
int bcm_field_action_remove_all(int unit, bcm_field_entry_t entry)
Remove all actions from a field entry.
int bcm_field_class_size_get(int unit, bcm_field_qualify_t qual, uint16 *class_size)
Get Class size for provided qualifier.
bcm_field_action_t action_types[BCM_FIELD_NUMBER_OF_ACTIONS_PER_GROUP]
Definition: field.h:38842
int bcm_field_flush_profile_create(int unit, uint32 flags, bcm_field_flush_profile_info_t *flush_profile_info, uint32 *flush_profile_id)
This function allocates a flush profile, sets it and installs it to HW.
int bcm_field_qualify_MirrorCopy_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyMirrorCopy qualifier from the field entry.
int bcm_field_qualify_TafCosProfile(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for bcmFieldQualifyTafCosProfile qualifier in the field entry.
struct bcm_field_status_s bcm_field_status_t
uint8 name[BCM_FIELD_MAX_SHORT_NAME_LEN]
Definition: field.h:38988
int bcm_field_qualify_L3SrcMiscClassId(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Add match criteria for bcmFieldQualifyL3SrcMiscClassId.
int bcm_field_qualify_TrillHopCount(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for TrillHopCount qualifier.
uint32 intf_class_port
Definition: field.h:30582
int bcm_field_qualify_DstMplsGports(int unit, bcm_field_entry_t entry, bcm_gport_t mpls_port_id, bcm_gport_t mpls_port_mask)
bcm_field_qualify_DstMplsGports
int bcm_field_qualify_IOAMNameSpaceIdMatch(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on In-situ OAM header Name Space ID match result.
int bcm_field_qualify_RoceBthPartitionKey_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get match criteria for bcmFieldQualifyRoceBthPartitionKey qualifier in the field entry.
int bcm_field_qualify_HiGigExtendedHeaderPresent(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyHiGigExtendedHeaderPresent qualifier in the field entry.
int bcm_field_group_ports_create_mode(int unit, bcm_pbmp_t pbmp, bcm_field_qset_t qset, int pri, bcm_field_group_mode_t mode, bcm_field_group_t *group)
Create a field group.
int bcm_field_qualify_LastIpProtocol_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyLastIpProtocol qualifier from the field entry.
int bcm_field_qualify_DstGports_get(int unit, bcm_field_entry_t entry, bcm_gport_t *port_id, bcm_gport_t *port_mask)
Get match criteria for bcmFieldQualifyDstGports qualifier from the field entry.
int bcm_field_flush_profile_attach(int unit, uint32 flags, bcm_field_group_t fg_id, uint32 flush_profile_id)
This function attaches a field-group to a flush profile.
int bcm_field_direct_extraction_action_get(int unit, bcm_field_entry_t entry, bcm_field_extraction_action_t *action, int max_count, bcm_field_extraction_field_t *extractions, int *actual_count)
Get an action from a direct extraction field entry (an entry that is a member of a direct extraction ...
int bcm_field_entry_multi_get(int unit, bcm_field_group_t group, int entry_size, bcm_field_entry_t *entry_array, int *entry_count)
Get an array of entry IDs in use in a group.
int bcm_field_qualify_DstPortSRRoleInterlink(int unit, bcm_field_entry_t entry, uint8 data)
Set match criteria for bcmFieldQualifyDstPortSRRoleInterlink.
int bcm_field_qualify_TrillIVersion(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for TrillIVersion qualifier.
enum bcm_field_group_type_e bcm_field_group_type_t
int bcm_field_qualify_InnerIp6PktHopLimit_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyInnerIp6PktHopLimit qualifier from the field entry.
bcm_field_context_key_info_t key_info
Definition: field.h:38874
bcm_field_context_param_type_t param_type
Definition: field.h:39950
int bcm_field_qualify_MHOpcode_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyMHOpcode qualifier from the field entry.
int bcm_field_qualify_HiGigGbpPresent_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
To get the qualified inputs on Overlay GBP Presence.
bcm_field_FibreChan_e
Definition: field.h:5263
int bcm_field_qualify_MplsLabel2Exp(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for MplsLabel2Exp qualifier.
int bcm_field_qualify_L2DstMiscClassId(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Add match criteria for bcmFieldQualifyL2DstMiscClassId.
int bcm_field_qualify_CopyToCpuReasonHigh_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
API to retrieve copy to cpu reason associated to a field entry.
int bcm_field_qualify_HiGigVni(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Set match criteria for bcmFieldQualifyHiGigVni qualifier in the field entry.
int bcm_field_qualify_DstClassL2_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyDstClassL2 qualifier from the field entry.
int bcm_field_qualify_OverlayIpv4OptionHdrType_get(int unit, bcm_field_entry_t entry, bcm_field_ip_option_hdr_type_t *type)
API to retrieve IPv4 option header type associated to a given field entry.
int bcm_field_qualify_DstL3MulticastGroup_get(int unit, bcm_field_entry_t entry, bcm_multicast_t *group, bcm_multicast_t *mask)
Get match criteria for bcmFieldQualifyDstL3MulticastGroup qualifier from the field entry.
void bcm_field_aset_t_init(bcm_field_aset_t *aset)
Initialize the Field Action Set structure.
int bcm_field_qualify_FlowtrackerClassId_get(int unit, bcm_field_entry_t entry, int *data, int *mask)
To get the qualified inputs on Classifier ID from Flowtracker group.
bcm_field_qualify_t qual_type
Definition: field.h:37345
int bcm_field_qualify_LoopbackSubtype(int unit, bcm_field_entry_t entry, bcm_field_loopback_subtype_t lb_subtype)
To qualify on Subtype of the Loopback header.
int bcm_field_qualify_MacAddrsNormalized(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for MacAddrsNormalized qualifier.
enum bcm_field_group_cycle_e bcm_field_group_cycle_t
int bcm_field_qualify_HiGigOffloadEngineSrcType(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyHiGigOffloadEngineSrcType qualifier in the field entry.
int bcm_field_qualify_FcoeRxIDClass_get(int unit, bcm_field_entry_t entry, bcm_class_t *data, bcm_class_t *mask)
Get match criteria for bcmFieldQualifyFcoeRxIDClass qualifier from the field entry.
int bcm_field_group_context_detach(int unit, bcm_field_group_t fg_id, bcm_field_context_t context_id)
Reset/deallocate all resources that were allocated for the context ID at input to the FG at input.
int bcm_field_qualify_InnerTtl(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_InnerTtl
int bcm_field_qualify_HeaderFormat_get(int unit, bcm_field_entry_t entry, bcm_field_header_format_t *header_format)
Get matching header format.
uint8 hit_mask
Definition: field.h:50165
int bcm_field_stat_sync_get(int unit, int stat_id, bcm_field_stat_t stat, uint64 *value)
Force an immediate counter update and retrieve specific statistic type.
int bcm_field_qualify_ForwardHdrVlanId_get(int unit, bcm_field_entry_t entry, bcm_vlan_t *data, bcm_vlan_t *mask)
Get match criteria for bcmFieldQualifyForwardHdrVlanId qualifier from the field entry.
int bcm_field_qualify_FlowtrackerGroupId(int unit, bcm_field_entry_t entry, int data, int mask)
Qualifies on Flow group id assigned(bcmFieldActionFlowtrackerGroupId) by FlowTracker based Field Proc...
int bcm_field_qualify_InnerSrcMac_get(int unit, bcm_field_entry_t entry, bcm_mac_t *data, bcm_mac_t *mask)
Get match criteria for InnerSrcMac qualifier.
int priority
Definition: field.h:9271
void bcm_field_qualifier_info_create_t_init(bcm_field_qualifier_info_create_t *qual_info)
Initialize the bcm_field_qualifier_info_create_t structure.
int bcm_field_qualify_DstVlanGport(int unit, bcm_field_entry_t entry, bcm_gport_t vlan_port_id)
bcm_field_qualify_DstVlanGport
int bcm_field_qualify_GpeFlags_get(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Get match criteria for GPE Flags.
bcm_field_L2Format_e
Definition: field.h:5468
int bcm_field_qualify_ExactMatchOpaqueObject0_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get value for bcmFieldQualifyExactMatchOpaqueObject0 qualifier from the field entry.
int bcm_field_qualify_PolicerIntPrio_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for PolicerIntPrio qualifier.
int bcm_field_class_map_get(int unit, bcm_field_stage_t stage, bcm_field_qualify_t qual, uint32 num_entries, uint32 *orig_values_array, uint32 *map_values_array)
To get the set of mapped TTL/ToS/TCP values of the packet for a given set of TTL/ToS/TCP values respe...
int bcm_field_qualify_TunnelType(int unit, bcm_field_entry_t entry, bcm_field_TunnelType_t tunnel_type)
Add tunnel type field qualification to a field entry.
int bcm_field_qualify_ArpSenderIp4_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyArpSenderIp4 qualifier in the field entry.
int bcm_field_group_get(int unit, bcm_field_group_t group, bcm_field_qset_t *qset)
Change or retrieve the qualifiers for a field group.
int bcm_field_qualify_TcpSequenceNum_get(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Get match criteria for TCP Sequence Num.
bcm_field_action_width_t actions_width[16]
Definition: field.h:8465
int bcm_field_qualify_IfaHopCount(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
To qualify on IFA hop count.
int bcm_field_qualify_GpeFlags(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for GPE Flags in the field entry.
int bcm_field_qualify_InnerApplSignatureId(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Qualify on Application signature based on Inner Payload.
int bcm_field_qualify_OverlayNetworkTagType_get(int unit, bcm_field_entry_t entry, bcm_field_network_tag_type_t *type)
API to retrieve overlay network tag type associated to a given field entry.
int bcm_field_qualify_ProtocolPktOpaqueCtrlId(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on opaque control id from protocol pkt forward table.
struct bcm_field_flush_entry_action_s bcm_field_flush_entry_action_t
int bcm_field_qualify_IpTunnelValue_get(int unit, bcm_field_entry_t entry, uint64 *data, uint64 *mask)
Get match criteria for IpTunnelValue qualifier.
int bcm_field_qualify_DstL3EgressUnderlay(int unit, bcm_field_entry_t entry, bcm_if_t if_id)
Qualifies on Underlay destination egress next hop.
bcm_field_loopback_subtype_e
Definition: field.h:42216
bcm_field_tcam_bank_allocation_mode_t bank_allocation_mode
Definition: field.h:37888
int bcm_field_qualify_L2SrcDiscard_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyL2SrcDiscard qualifier from the field entry.
int bcm_field_qualify_ApplSignatureId(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Qualify on Application signature.
int bcm_field_qualify_HiGigMirrorOrSwitchPkt(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyHiGigMirrorOrSwitchPkt qualifier in the field entry.
int bcm_field_qualify_EgressClassVxlan(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Set match criteria for EgressClassVxlan qualifier.
int bcm_field_qualify_LearnSrcPort_get(int unit, bcm_field_entry_t entry, bcm_gport_t *data)
Get match criteria for LearnSrcPort qualifier.
int bcm_field_qualify_TunnelHeaderDstMac_get(int unit, bcm_field_entry_t entry, bcm_mac_t *data, bcm_mac_t *mask)
Get match criteria for bcmFieldQualifyTunnelHeaderDstMac qualifier from the field entry.
int bcm_field_qualify_SrcModPortGport_get(int unit, bcm_field_entry_t entry, bcm_gport_t *data)
Get match criteria for bcmFieldQualifySrcModPortGport qualifier from the field entry.
int bcm_field_qualify_HiGigDstGport(int unit, bcm_field_entry_t entry, bcm_gport_t port_id, bcm_gport_t port_mask)
Set match criteria for bcmFieldQualifyHiGigDstGport qualifier in the field entry.
int bcm_field_destination_stat_attach(int unit, bcm_field_destination_match_t *match, uint32 stat_counter_id)
Attach the statistic counter ID to a field destination entry.
int bcm_field_qualify_MplsLabel5Bos(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on MPLS label5 bos value.
int bcm_field_qualify_OamSubtype_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for OamSubtype qualifier.
int bcm_field_action_mac_add(int unit, bcm_field_entry_t entry, bcm_field_action_t action, bcm_mac_t mac)
Add an action to a field entry.
int bcm_field_qualify_SrcNivGport(int unit, bcm_field_entry_t entry, bcm_gport_t niv_port_id)
bcm_field_qualify_SrcNivGport
int bcm_field_presel_create(int unit, bcm_field_presel_t *presel_id)
Create a preselection specification.
bcm_field_sr_tag_type_e
Definition: field.h:34285
int bcm_field_qualify_VxlanNetworkId_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyVxlanNetworkId qualifier in the field entry.
void bcm_field_snap_header_t_init(bcm_field_snap_header_t *snap_header)
Initialize Field Qualifier SNAP header structure.
int bcm_field_qualify_TafGateId_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyTafGateId qualifier from the field entry.
int bcm_field_qualify_HiGigMirrorOrSwitchPkt_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyHiGigMirrorOrSwitchPkt qualifier from the field entry.
struct bcm_field_group_presel_info_s bcm_field_group_presel_info_t
enum bcm_field_qualify_e bcm_field_qualify_t
int bcm_field_qualify_MixedSrcClassId_get(int unit, bcm_field_entry_t entry, bcm_pbmp_t pbmp, bcm_field_src_class_t *data, bcm_field_src_class_t *mask)
Get match criteria for bcmFieldQualifyMixedSrcClassId qualifier from the preselection field entry.
int bcm_field_qualify_L2GreVfiHit(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for L2GreVfiHit qualifier.
bcm_cos_t pri
Definition: l3.dox:4110
void bcm_field_presel_entry_id_info_init(bcm_field_presel_entry_id_t *entry_id)
Initialize the bcm_field_presel_entry_id_t structure.
int bcm_field_qualify_BypassFilter32(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for BypassFilter qualifier (32-bits).
int bcm_field_qualify_TunnelPayloadDip_get(int unit, bcm_field_entry_t entry, bcm_ip_t *data, bcm_ip_t *mask)
Get match criteria for bcmFieldQualifyTunnelPayloadDip qualifier from the field entry.
int bcm_field_qualify_TunnelAltDstIp(int unit, bcm_field_entry_t entry, bcm_ip_t data, bcm_ip_t mask)
To qualify on alternate tunnel destination Ipv4.
int bcm_field_qualify_MacAddrsNormalized_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for MacAddrsNormalized qualifier.
int bcm_field_qualify_InnerIpProtocolCommon_get(int unit, bcm_field_entry_t entry, bcm_field_IpProtocolCommon_t *protocol)
Get match criteria for bcmFieldQualifyInnerIpProtocolCommon qualifier from the field entry.
enum bcm_field_name_to_id_type_e bcm_field_name_to_id_type_t
int bcm_field_qualify_L4SrcPortClass(int unit, bcm_field_entry_t entry, bcm_class_t data, bcm_class_t mask)
Configure match criteria for bcmFieldQualifyL4SrcPortClass qualifier from the field entry.
int bcm_field_qualify_DstIp6High_get(int unit, bcm_field_entry_t entry, bcm_ip6_t *data, bcm_ip6_t *mask)
Get match criteria for bcmFieldQualifyDstIp6High qualifier from the field entry.
int bcm_field_qualify_HiGig3Pkt_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for HiGig3 packet qualifier.
int bcm_field_qualify_HiGigDstModuleGport(int unit, bcm_field_entry_t entry, bcm_gport_t port_id, bcm_gport_t port_mask)
Set match criteria for bcmFieldQualifyHiGigDstModuleGport qualifier in the field entry.
int bcm_field_qualify_PtpVersion_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyPtpVersion qualifier from the field entry.
int bcm_field_qualify_StaggeredPreselProfileDirect_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Set match criteria for bcmFieldQualifyStaggeredPreselProfileDirect_get.
int bcm_field_qualify_EthernetOamInterfaceClassMim_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyEthernetOamInterfaceClassMim.
bcm_field_system_header_e
Definition: field.h:25038
struct bcm_field_ace_format_info_s bcm_field_ace_format_info_t
void bcm_field_group_config_t_init(bcm_field_group_config_t *group_config)
Initialize the Field Group Config structure.
int bcm_field_qualify_SrcCompressionClassId_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifySrcCompressionClassId qualifier from the field entry.
int bcm_field_qualify_GeneratedTtl_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
This API Qualify on forwarding TTL. may be selected on tunnel basis to be taken from the tunnel layer...
int bcm_field_qualify_OuterVlan(int unit, bcm_field_entry_t entry, bcm_vlan_t data, bcm_vlan_t mask)
bcm_field_qualify_OuterVlan
int bcm_field_oam_stat_action_delete_all(int unit, bcm_field_entry_t entry)
Delete all the Oam Stat Actions from entry.
int bcm_field_qualify_Rtag7BHashLower_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get match criteria for Rtag7BHashLower qualifier.
int bcm_field_qualify_L5PayloadByte6(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on L5 Payload byte 6.
enum bcm_field_higig_proxy_tunnel_type_e bcm_field_higig_proxy_tunnel_type_t
int bcm_field_qualify_IpExtHdr2Protocol(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for IpExtHdr2Protocol qualifier.
int bcm_field_context_hash_destroy(int unit, bcm_field_stage_t stage, bcm_field_context_t context_id)
Destroy HASH key which is used to create CRC, deallocate all resources allocated by bcm_field_context...
int bcm_field_qualify_InterfaceClassL3_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyInterfaceClassL3 qualifier from the field entry.
int bcm_field_qualify_SampledPkt_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifySampledPkt qualifier from the field entry.
int bcm_field_qualify_SrcPortSRType(int unit, bcm_field_entry_t entry, bcm_field_port_sr_type_t type)
Set match criteria for bcmFieldQualifySrcPortSRType.
int bcm_field_qualify_L3SrcHit(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_L3SrcHit
int bcm_field_fem_action_info_get(int unit, bcm_field_group_t fg_id, bcm_field_action_priority_t encoded_position, bcm_field_fem_action_info_t *fem_action_info)
This function give the caller all info concerning contents of FEM machine's HW and,...
struct bcm_field_presel_entry_id_s bcm_field_presel_entry_id_t
int bcm_field_qualify_FcoeSOF_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyFcoeSOF qualifier from the field entry.
int bcm_field_qualify_FibreChanDFCtl(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyFibreChanDFCtl qualifier in the field entry.
int bcm_field_qualify_HiGig3Class_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyHiGig3Class qualifier from the field entry.
uint8 name[BCM_FIELD_MAX_SHORT_NAME_LEN]
Definition: field.h:39256
bcm_field_qualifier_class_e
Definition: field.h:4772
int bcm_field_qualify_VxlanPacket(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyVxlanPacket qualifier in the field entry.
int bcm_field_hints_delete(int unit, bcm_field_hintid_t hint_id, bcm_field_hint_t *hint)
Remove a hint structure from the hint id.
int bcm_field_qualify_EthernetOamInterfaceClassPort_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyEthernetOamInterfaceClassPort.
int bcm_field_qualify_RawResidenceTime_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyRawResidenceTime from a field entry.
int bcm_field_qualify_VxlanVnidVlanTranslateHit(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyVxlanVnidVlanTranslateHit qualifier in the field entry.
int bcm_field_qualify_IpFragNonOrFirst(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Configure match criteria for bcmFieldQualifyIpFragNonOrFirst qualifier from the field entry.
int bcm_field_qualify_TunnelPayloadOuterVlan_get(int unit, bcm_field_entry_t entry, bcm_vlan_t *data, bcm_vlan_t *mask)
Get match criteria for bcmFieldQualifyTunnelPayloadOuterVlan qualifier from the field entry.
int bcm_field_qualify_EgressClassL2Gre_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get match criteria for EgressClassL2Gre qualifier.
int bcm_field_qualify_NetworkTagType_get(int unit, bcm_field_entry_t entry, bcm_field_network_tag_type_t *type)
API to retrieve network tag type associated to a given field entry.
int bcm_field_action_value_map(int unit, bcm_field_stage_t stage, bcm_field_action_t bcm_action, uint32 bcm_value[BCM_FIELD_ACTION_WIDTH_IN_WORDS], uint32 hw_value[BCM_FIELD_ACTION_WIDTH_IN_WORDS])
Maps the bcm value of a given action in a given stage to the correspondig HW value....
int bcm_field_qualify_MplsBos(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for MplsBos qualifier.
int bcm_field_qualify_PtpMsgType(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on PTP packet message type.
int bcm_field_data_qualifier_get(int unit, int qual_id, bcm_field_data_qualifier_t *qual)
Return the configuration of the given data qualifier.
int bcm_field_entry_stat_detach(int unit, bcm_field_entry_t entry, int stat_id)
Detach statistics entity from Field Processor entry.
int class_id
Definition: l3.dox:4111
int bcm_field_qualify_LoopbackHiGig3Flags_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
int bcm_field_qualify_IfaCurrentLengthEqualToZero(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify if IFA metadata header current length equals to 0.
int bcm_field_context_create(int unit, uint32 flags, bcm_field_stage_t stage, bcm_field_context_info_t *context_info, bcm_field_context_t *context_id)
Create a new Field Context on a desired stage.
bcm_field_compression_map_type_e
Definition: field.h:48862
int bcm_field_qualify_HiGig3Class(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
bcm_field_qualify_HiGig3Class
int bcm_field_qualify_HiGigTrafficClass_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyHiGigTrafficClass qualifier from the field entry.
int bcm_field_qualify_SrcPort(int unit, bcm_field_entry_t entry, bcm_module_t data_modid, bcm_module_t mask_modid, bcm_port_t data_port, bcm_port_t mask_port)
bcm_field_qualify_SrcPort
bcm_multicast_t mc_group
Definition: field.h:9068
int bcm_field_qualify_GpeProtocol(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for GPE Protocol in the field entry.
int bcm_field_qualify_MplsForwardingLabelAction_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for MplsForwardingLabelAction qualifier(8 bits).
bcm_field_fem_extraction_output_source_type_e
Definition: field.h:40015
bcm_field_fem_input_info_t fem_input
Definition: field.h:40063
int bcm_field_qualify_TrillOpLength(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for TrillOpLength qualifier.
int bcm_field_qualify_MplsLabel1_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for MplsLabel1 qualifier.
int bcm_field_qualify_SrcPortSRLanId_get(int unit, bcm_field_entry_t entry, uint8 *lan_id)
Get match criteria for bcmFieldQualifySrcPortSRLanId.
int bcm_field_qualify_HiGigVpLagFailoverPacket_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyHiGigVpLagFailoverPacket qualifier from the field entry.
int bcm_field_qualify_ExtensionHeaderSubCode_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyExtensionHeaderSubCode qualifier from the field entry.
int bcm_field_qualify_OuterVlanPriCfi(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyOuterVlanPriCfi qualifier in the field entry.
int bcm_field_qualify_ArpSrcMac(int unit, bcm_field_entry_t entry, bcm_mac_t data, bcm_mac_t mask)
To qualify on source mac of Arp/Rarp packet.
int bcm_field_qualify_CongestionMarked(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Qualify on Congestion Marked Status.
int bcm_flowtracker_group_t
Definition: flowtracker.h:798
int bcm_field_qualify_EthernetOamTxPktUPMEP_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyEthernetOamTxPktUPMEP.
int bcm_field_qualify_SrcIp(int unit, bcm_field_entry_t entry, bcm_ip_t data, bcm_ip_t mask)
bcm_field_qualify_SrcIp
int bcm_field_qualify_PacketIsIEEE1588(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcm_field_qualify_PacketIsIEEE1588.
int bcm_field_qualify_IOAMPktOverflowed(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on In-situ OAM header Overflow flag.
bcm_field_mirror_on_drop_reason_e
Definition: field.h:48145
bcm_field_oam_domain_e
Definition: field.h:5563
int bcm_field_qualify_OverlayIpOptionHdrType_get(int unit, bcm_field_entry_t entry, bcm_field_ip_option_hdr_type_t *type)
API to retrieve overlay IP option header type associated to a given field entry.
int bcm_field_qualify_L3Check(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
To qualify on packet L3 check.
int bcm_field_qualify_OuterL4Info(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
To qualify on outer L4 Information.
int bcm_field_qualify_TunnelHeaderDip6_get(int unit, bcm_field_entry_t entry, bcm_ip6_t *data, bcm_ip6_t *mask)
Get match criteria for bcmFieldQualifyTunnelHeaderDip6 qualifier from the field entry.
int bcm_field_qualify_EthernetOamTxPktUPMEP(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyEthernetOamTxPktUPMEP.
int bcm_field_qualify_CapwapPayloadTos_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyCapwapPayloadTos_get qualifier from the field entry.
int bcm_field_qualify_InnerDstMac_get(int unit, bcm_field_entry_t entry, bcm_mac_t *data, bcm_mac_t *mask)
Get match criteria for InnerDstMac qualifier.
int bcm_field_qualify_ITag_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyITag qualifier from the field entry.
int nof_entry_quals
Definition: field.h:50154
void bcm_field_flush_entry_info_t_init(bcm_field_flush_entry_info_t *flush_entry_info)
Initialize the field flush entry structure.
int bcm_field_qualify_StaggeredPreselProfile1(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for bcmFieldQualifyStaggeredPreselProfile1.
int bcm_field_qualify_Vpn(int unit, bcm_field_entry_t entry, bcm_vpn_t data, bcm_vpn_t mask)
Match on VPN.
int bcm_field_qualify_SrcPortSRRoleInterlink(int unit, bcm_field_entry_t entry, uint8 data)
Set match criteria for bcmFieldQualifySrcPortSRRoleInterlink.
struct bcm_field_group_external_info_s bcm_field_group_external_info_t
int bcm_field_qualify_IpFragPkt(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Add to match on IP fragment packet qualification to a field entry.
int bcm_field_qualify_L2DestHit_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyL2DestHit qualifier from the field entry.
int bcm_field_qualify_SRError_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifySRError.
bcm_field_fem_extraction_output_bit_t output_bit[BCM_FIELD_NUMBER_OF_MAPPING_BITS_PER_FEM]
Definition: field.h:40034
int bcm_field_qualify_INTProbeMarker1(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for bcmFieldQualifyINTProbeMarker1 qualifier for a given field entry.
int bcm_field_qualify_CapwapPayloadSOF(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyCapwapPayloadSOF qualifier in the field entry.
int bcm_field_qualify_HiGigProxy(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Qualify on HiGig lookup packets.
int bcm_field_qualify_RecircleHdrFirstDropReason(int unit, bcm_field_entry_t entry, bcm_field_drop_reason_t type)
API to add redirect header first drop reason to a field entry for qualification.
int bcm_field_qualify_DstNivGports(int unit, bcm_field_entry_t entry, bcm_gport_t niv_port_id, bcm_gport_t niv_port_mask)
bcm_field_qualify_DstNivGports
int bcm_field_qualify_InPort_get(int unit, bcm_field_entry_t entry, bcm_port_t *data, bcm_port_t *mask)
Get match criteria for bcmFieldQualifyInPort qualifier from the field entry.
int bcm_field_qualify_VlanMembershipCheck(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on vlan membership check.
int bcm_field_qualify_EthernetOamClassVpn(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyEthernetOamClassVpn.
int bcm_field_qualify_IfaActionVector(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
To qualify on IFA Action vector.
int bcm_field_qualify_OverlayNetworkTagType(int unit, bcm_field_entry_t entry, bcm_field_network_tag_type_t type)
API to add overlay network tag type to a field entry for the field qualification.
int bcm_field_qualify_L2DestSRNodeType(int unit, bcm_field_entry_t entry, bcm_field_sr_node_type_t type)
Set match criteria for bcmFieldQualifyL2DestSRNodeType.
int bcm_field_qualify_OamHeaderBits0_31(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for OamHeaderBits0_31 qualifier.
int bcm_field_flush_profile_destroy(int unit, uint32 flags, uint32 flush_profile_id)
This function de-allocates a flush profile and sets the HW back to default values.
int bcm_field_qualify_SRSupervisionType(int unit, bcm_field_entry_t entry, bcm_field_sr_supervision_type_t type)
Set match criteria for bcmFieldQualifySRSupervisionType.
int bcm_field_qualify_IEEE1588Command(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for field_qualify_IEEE1588Command.
int bcm_field_qualify_SubportTagPresent_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
API to retrieve Subport tag present status associated to a given field entry.
int bcm_field_qualify_SubportPktTag_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get match criteria for bcmFieldQualifySubportPktTag qualifier from the field entry.
int bcm_field_qualify_L3SrcBind_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyL3SrcBind qualifier from the field entry.
int bcm_field_qualify_HiGigDoNotFlags(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyHiGigDoNotFlags qualifier in the field entry.
int bcm_field_qualify_LlidValue_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get LLID value for bcmFieldQualifyLlidValue qualifier from the field entry.
void bcm_field_name_to_id_info_t_init(bcm_field_name_to_id_info_t *name_to_id_info)
Initialize the bcm_field_name_to_id_info_t structure.
enum bcm_field_range_type_e bcm_field_range_type_t
struct bcm_field_group_info_s bcm_field_group_info_t
int bcm_field_qualify_HiGigOffloadEngineSrcType_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyHiGigOffloadEngineSrcType qualifier from the field entry.
int bcm_field_group_presel_set(int unit, bcm_field_group_t group, bcm_field_presel_set_t *presel)
Associate a set of preselectors with a Field group.
int bcm_field_qualify_PortOrientation(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for PortOrientation qualifier.
bcmFieldHeaderFormatExtensionMplsL4IPV6isH4</td ></tr >< tr >< td > HeaderFormatExtensionMplsL4IPV4isH5</td >< td > L4 stands for UDP TCP Hit is marked when parser speculates following the next protocol is Ethernet followed by L4 of following the next protocol is Ethernet followed by L4 of remove or test individual qualifier bits in the qualifier set q Add a bit to a qualifier set q Test if a bit is set in a qualifier set On certain actions are collected into action and test individual actions within the action set a Add an action to an action set a Test if an action is included in an aset The following macro defines the maximum width of all actions in field processor module BCM_FIELD_ASET_WIDTH_MAX maximum value to indicate the total width of all actions In certain where it is possible to specify more than a single header header format sets are used This allows multiple header formats to be specified anchor fp_bcm_field_header_format_set_t hf Add a header hf Add a header hf Remove a header format from a bcm_field_header_format_set_t hf Test whether a header format is included in a bcm_field_header_format_set_t qual
Definition: field.dox:5132
int bcm_port_t
Definition: types.h:77
uint32 dosattack_event_flags
Definition: field.h:27188
int bcm_field_qualify_MplsLabel7Exp(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on MPLS label7 exp value.
int bcm_field_qualify_ExternalValue5(int unit, bcm_field_entry_t entry, uint64 data, uint64 mask)
Set match criteria for bcmFieldQualifyExternalValue5 qualifier in the field entry.
int bcm_field_qualify_InnerPriTaggedPkt_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get to match on inner priority tagged packet qualification from a field entry.
int bcm_field_qualify_HiGigLoadBalanceID(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyHiGigLoadBalanceID qualifier in the field entry.
int bcm_field_qualify_InVPortWide_get(int unit, bcm_field_entry_t entry, uint64 *data, uint64 *mask)
Get match criteria for bcmFieldQualifyInVPortWide qualifier from the field entry.
void bcm_field_entry_qual_t_init(bcm_field_entry_qual_t entry_qual[BCM_FIELD_NUMBER_OF_QUALS_PER_GROUP])
Initialize an array of bcm_field_entry_qual_t structures.
bcm_field_redirect_type_e
Definition: field.h:29206
int bcm_field_qualify_ForwardingVlanValid(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_ForwardingVlanValid
bcm_field_presel_set_t group_ref
Definition: field.h:9298
int bcm_field_group_action_set(int unit, bcm_field_group_t group, bcm_field_aset_t aset)
Change or retrieve the actions for a field group.
int bcm_field_qualify_HiGigExtendedHeaderPresent_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyHiGigExtendedHeaderPresent qualifier from the field entry.
int bcm_field_qualify_L2StationMove(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_L2StationMove
int bcm_field_data_qualifier_create(int unit, bcm_field_data_qualifier_t *data_qualifier)
Create a data/offset-based qualifier.
Definition: field.h:50169
enum bcm_field_flow_timestamp_type_e bcm_field_flow_timestamp_type_t
int bcm_field_qualify_OamMdl_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyOamMdl qualifier from the field entry.
int bcm_field_qualify_IcmpError(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyIcmpError qualifier in the field entry.
int bcm_field_qualify_MplsControlWord_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for MplsControlWord qualifier.
bcm_field_hint_type_t hint_type
Definition: field.h:27174
int bcm_field_qualify_FromMacSecPort_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
To get the qualified inputs on packet forwarded through the internal MACSEC port.
int bcm_field_stat_size(int unit, int stat_id, int *stat_size)
Get number of counters associated with statistics entity.
int bcm_field_qualify_L3DestRouteHit(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_L3DestRouteHit
bcm_field_orientation_e
Definition: field.h:24456
int bcm_field_stat_counter_get(int unit, uint32 stat_id, bcm_field_stat_t stat, uint32 num_entries, uint32 *counter_indexes, bcm_stat_value_t *counter_values)
Get counter statistic values for a field entity.
bcm_field_flush_entry_qual_t entry_qual[BCM_FIELD_NUMBER_OF_QUALS_PER_GROUP]
Definition: field.h:50156
int bcm_field_qualify_HiGigMirrorToVp(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyHiGigMirrorToVp qualifier in the field entry.
int bcm_field_qualify_DstIpClassUpper(int unit, bcm_field_entry_t entry, bcm_class_t data, bcm_class_t mask)
Configure match criteria for bcmFieldQualifyDstIpClassUpper qualifier from the field entry.
int bcm_field_qualify_RxTrapData_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for RxTrapData qualifier.
int bcm_field_qualify_HiGigSrcPortGport_get(int unit, bcm_field_entry_t entry, bcm_gport_t *port_id, bcm_gport_t *port_mask)
Get match criteria for bcmFieldQualifyHiGigSrcPortGport qualifier from the field entry.
int bcm_field_efes_action_delete(int unit, bcm_field_group_t fg_id, bcm_field_context_t context_id, bcm_field_action_priority_t bcm_field_action_priority_t)
This function deletes an EFES that was added with bcm_field_efes_action_add().
int bcm_field_qualify_FlowtrackerMeteringExceeded_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
To get the qualified inputs on event whether Flowtracker metering is exceeded.
bcm_field_urpf_mode_e
Definition: field.h:5458
int bcm_field_qualify_MacSecSecTagEbit_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
To get the qualified inputs on the C-Bit of MACSEC SECTAG.
int bcm_field_qualify_IfaVersion(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Add match criteria for bcmFieldQualifyIfaVersion.
enum bcm_field_compare_operand_e bcm_field_compare_operand_t
int bcm_field_qualify_SystemPortBitmap(int unit, bcm_field_entry_t entry, bcm_pbmp_t data, bcm_pbmp_t mask)
To qualify on a port bitmap generated from SGLP.
int bcm_field_qualify_IngressL2InterfaceOpaqueCtrlId1(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on opaque control id 1 from L2_IIF table.
int bcm_field_qualify_IntPktType_get(int unit, bcm_field_entry_t entry, bcm_field_int_pkt_type_t *type)
Get INT (Inband-Telemetry) Packet type field qualification from a field entry.
int bcm_field_qualify_TrillPayload(int unit, bcm_field_entry_t entry, uint64 data, uint64 mask)
Set match criteria for TrillPayload qualifier.
void bcm_field_qual_attach_info_t_init(bcm_field_qualify_attach_info_t *qual_info)
Initialize the bcm_field_qualify_attach_info_t structure.
int bcm_field_qualify_SrcVlanGports_get(int unit, bcm_field_entry_t entry, bcm_gport_t *vlan_port_id, bcm_gport_t *vlan_port_mask)
Get match criteria for bcmFieldQualifySrcVlanGports qualifier from the field entry.
int bcm_field_qualify_MplsLabel7Bos_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyMplsLabel7Bos qualifier from the field entry.
int bcm_field_qualify_HiGigSrcType_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyHiGigSrcType qualifier from the field entry.
int bcm_field_qualify_IpTunnelHit(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for IpTunnelHit qualifier.
int bcm_field_qualify_InnerVlanActionRange_get(int unit, bcm_field_entry_t entry, bcm_vlan_t *data, bcm_vlan_t *mask)
Get match criteria for InnerVlanActionRange qualifier.
int bcm_field_qualify_ReplicantFirst(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for ReplicantFirst qualifier.
int bcm_field_qualify_InnerIpProtocolCommon(int unit, bcm_field_entry_t entry, bcm_field_IpProtocolCommon_t protocol)
bcm_field_qualify_InnerIpProtocolCommon
int bcm_field_qualify_SrcGport_get(int unit, bcm_field_entry_t entry, bcm_gport_t *port_id)
Get match criteria for SrcGport qualifier.
int bcm_field_qualify_MplsLabel4Id_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get value for bcmFieldQualifyMplsLabel4Id qualifier from the field entry.
int bcm_field_qualify_LoopbackSubtype_get(int unit, bcm_field_entry_t entry, bcm_field_loopback_subtype_t *lb_subtype)
To get the qualified inputs on Subtype of the Loopback header.
bcm_field_int_pkt_type_e
Definition: field.h:37192
int bcm_field_qualify_DstHiGig(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Qualify on HiGig destination packets.
struct bcm_field_context_key_info_s bcm_field_context_key_info_t
int bcm_field_qualify_MimlVlanPri(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyMimlVlanPri qualifier in the field entry.
int bcm_field_qualify_CapwapPayloadDip6_get(int unit, bcm_field_entry_t entry, bcm_ip6_t *data, bcm_ip6_t *mask)
Get match criteria for bcmFieldQualifyCapwapPayloadDip6 qualifier from the field entry.
int bcm_field_qualify_IntPktOverflowed(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Add to match on INT (Inband-Telemetry) header Overflow Bit packet qualification to a field entry.
bcm_field_qualify_t qualifier
Definition: field.h:9318
int bcm_field_qualify_InnerVlanId(int unit, bcm_field_entry_t entry, bcm_vlan_t data, bcm_vlan_t mask)
Set match criteria for bcmFieldQualifyInnerVlanId qualifier in the field entry.
int bcm_field_qualify_InnerIp6PktNextHeader_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyInnerIp6PktNextHeader qualifier from the field entry.
int bcm_field_qualify_MplsLabel2Hit(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for MplsLabel2Hit qualifier.
int bcm_field_qualify_CapwapPayloadSip_get(int unit, bcm_field_entry_t entry, bcm_ip_t *data, bcm_ip_t *mask)
Get match criteria for bcmFieldQualifyCapwapPayloadSip qualifier from the field entry.
int bcm_field_fem_action_delete(int unit, bcm_field_group_t fg_id, bcm_field_action_priority_t bcm_field_action_priority_t)
This function sets FEM machine's HW and SW values (SWSTATE) to initial values.
int bcm_field_qualify_MirrorOnDropReason_get(int unit, bcm_field_entry_t entry, bcm_field_mirror_on_drop_reason_t *type)
API to retrieve mirror on drop reason associated to a field entry.
bcm_field_src_class_mode_e
Definition: field.h:30559
int bcm_field_qualify_OuterL5PayloadByte3_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyOuterL5PayloadByte3 qualifier from the field entry.
bcm_field_efes_action_or_mask_t action_or_mask
Definition: field.h:40178
int bcm_field_qualify_HiGigSrcTrunk(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyHiGigSrcTrunk qualifier in the field entry.
int bcm_field_qualify_TunnelPayloadIpProtocol(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyTunnelPayloadIpProtocol qualifier in the field entry.
uint32 start_bit
Definition: field.h:27179
int bcm_field_qualify_L5PayloadByte3_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyL5PayloadByte3 qualifier from the field entry.
int bcm_field_control_set(int unit, bcm_field_control_t control, uint32 state)
Set or get a field control value.
int bcm_field_qualify_FibreChanSrcIdClassMsbNibble_get(int unit, bcm_field_entry_t entry, bcm_class_t *data, bcm_class_t *mask)
Get match criteria for bcmFieldQualifyFibreChanSrcIdClassMsbNibble qualifier from the field entry.
uint8 name[BCM_FIELD_MAX_NAME_LEN]
Definition: field.h:9304
int bcm_field_qualify_IpmcStarGroupHit_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyIpmcStarGroupHit qualifier from the field entry.
int bcm_field_qualify_EgressClassPort_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
To get the qualified inputs on Class ID assigned to packet based on Egress Port.
int bcm_field_qualify_Ip6TrafficClass_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyIp6TrafficClass qualifier from the field entry.
int bcm_field_data_qualifier_destroy(int unit, int qual_id)
Destroy a data/offset-based qualifier.
int bcm_field_qualify_ExternalHit0(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyExternalHit0 qualifier in the field entry.
int bcm_field_qualify_LoopbackHdrFlags_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get value for bcmFieldQualifyLoopbackHdrFlags qualifier from the field entry.
int bcm_field_qualify_SrcWlanGports_get(int unit, bcm_field_entry_t entry, bcm_gport_t *wlan_port_id, bcm_gport_t *wlan_port_mask)
Get match criteria for bcmFieldQualifySrcWlanGports qualifier from the field entry.
enum bcm_field_sr_tag_type_e bcm_field_sr_tag_type_t
int bcm_field_qualify_LoopbackHdrDstType(int unit, bcm_field_entry_t entry, bcm_field_DstType_t lb_hdr_dst_type)
Add loopback packet header destination type field qualification to a field entry.
int bcm_field_qualify_OuterL5PayloadByte8_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyOuterL5PayloadByte8 qualifier from the field entry.
int bcm_field_qualify_DstIpClassLower(int unit, bcm_field_entry_t entry, bcm_class_t data, bcm_class_t mask)
Configure match criteria for bcmFieldQualifyDstIpClassLower qualifier from the field entry.
int bcm_field_qualify_IfaHopLimit_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get value for bcmFieldQualifyIfaHopLimit qualifier from the field entry.
int bcm_field_qualify_LoopBackTrafficClass(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyLoopBackTrafficClass qualifier in the field entry.
int bcm_field_qualify_HiGigSrcModuleGport_get(int unit, bcm_field_entry_t entry, bcm_gport_t *port_id, bcm_gport_t *port_mask)
Get match criteria for bcmFieldQualifyHiGigSrcModuleGport qualifier from the field entry.
bcm_cos_queue_t mc_cos
Definition: field.h:9103
enum bcm_field_IpFrag_e bcm_field_IpFrag_t
int bcm_field_qualify_SrcTrunk(int unit, bcm_field_entry_t entry, bcm_trunk_t data, bcm_trunk_t mask)
bcm_field_qualify_SrcTrunk
int bcm_field_action_get(int unit, bcm_field_entry_t entry, bcm_field_action_t action, uint32 *param0, uint32 *param1)
Retrieve the parameters for an action previously added to a field entry.
bcm_field_aset_t aset
Definition: field.h:9269
int bcm_field_qualify_TrillHopCount_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for TrillHopCount qualifier.
int bcm_field_qualify_MplsCwPresent_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
API to retrieve MPLS Control word present status associated to a field entry.
int bcm_field_qualify_DstType_get(int unit, bcm_field_entry_t entry, bcm_field_DstType_t *dst_type)
Get packet destinaion type field qualification from a field entry.
int bcm_field_qualify_InterfaceClassL3Tunnel(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
To qualify on Class identifier derived from L3 Tunnel.
int bcm_field_stat_create_id(int unit, bcm_field_group_t group, int nstat, bcm_field_stat_t *stat_arr, int stat_id)
Create stat collection entity with specified Statistics entity ID value.
int bcm_field_group_wlan_create_mode_id(int unit, bcm_field_qset_t qset, int pri, bcm_field_group_mode_t mode, bcm_field_group_t group)
Create a field group.
int bcm_field_qualify_PtpPktCtrl_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get value for bcmFieldQualifyPtpPktCtrl qualifier from the field entry.
int bcm_field_qualify_IpFrag_get(int unit, bcm_field_entry_t entry, bcm_field_IpFrag_t *frag_info)
Get match criteria for bcmFieldQualifyIpFrag qualifier from the field entry.
int bcm_field_qualify_L2SrcMiscClassId(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Add match criteria for bcmFieldQualifyL2SrcMiscClassId.
int bcm_field_qualify_IfaCurrentLength_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
To get qualified inputs on IFA metadata header current length.
int bcm_field_qualify_L2SrcHit_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyL2SrcHit qualifier from the field entry.
int bcm_field_qualify_DstIp6Class_get(int unit, bcm_field_entry_t entry, bcm_class_t *data, bcm_class_t *mask)
Get match criteria for bcmFieldQualifyDstIp6Class qualifier from the field entry.
int bcm_field_qualify_ExtensionHeaderType(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_ExtensionHeaderType
int bcm_field_qualify_EgressL3TunnelGport(int unit, bcm_field_entry_t entry, bcm_gport_t tunnel_port_id)
bcm_field_qualify_EgressL3TunnelGport
int bcm_field_qualify_RxPortType_get(int unit, bcm_field_entry_t entry, bcm_field_PortType_t *port_type)
Get rx port type field qualification from a field entry.
int bcm_field_qualify_InnerDstMac(int unit, bcm_field_entry_t entry, bcm_mac_t data, bcm_mac_t mask)
Set match criteria for InnerDstMac qualifier.
int bcm_field_qualify_L3DestHit(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_L3DestHit
endcode< table >< caption > BCM L3 ECMP Flags</caption >< tr >< th > Name</th >< th > Purpose</th ></tr >< tr >< td > BCM_L3_ECMP_DYNAMIC_LOAD_DECREASE_RESET</td >< td > If historical member load is reset to the instantaneous member load if the latter is smaller</td ></tr >< tr >< td > BCM_L3_ECMP_DYNAMIC_EXPECTED_LOAD_DECREASE_RESET</td >< td > If historical expected member load is reset to the instantaneous expected member load if the latter is smaller</td ></tr >< tr >< td > BCM_L3_ECMP_PATH_NO_SORTING</td >< td > If the members of the ECMP group won t be sorted Once an ECMP group has been adding members into or removing members from the ECMP group will follow the attribute of the group regardless of whether the flag is set in the parameter On device such as this flag is always set when Resilient Hashing is configured for the ECMP group so that the RH set in the ECMP table is randomly programmed</td ></tr >< tr >< td > BCM_L3_ECMP_OVERLAY</td >< td > If the ECMP group will be programmed at ECMP Level in devices supporting Hierarchical ECMP feature</td ></tr >< tr >< td > BCM_L3_ECMP_UNDERLAY</td >< td > If the ECMP group will be programmed at ECMP Level in devices supporting Hierarchical ECMP feature</td ></tr >< tr >< td > BCM_L3_ECMP_WEIGHTED</td >< td > If this is a Weighted Cost Multi Path group that supports large member counts Valid member count values and</td ></tr >< tr >< td > BCM_L3_ECMP_LARGE_TABLE</td >< td > If selected a large members group table is used for the resilient hashing for better member distribution</td ></tr >< tr >< td > BCM_L3_ECMP_EXTENDED</td >< td > Indicate ECMP extended indicates it s a weighted ECMP group and each ECMP member should be with a weight</td ></tr >< tr >< td > BCM_L3_ECMP_MEMBER_REPLICATION_WEIGHTED</td >< td > Same as BCM_L3_WEIGHTED and weighted ECMP is achieved by member replication</td ></tr ></table >< table >< caption > BCM L3 ECMP Dynamic Load Balancing Mode Flags</caption >< tr >< th > Name</th >< th > Purpose</th ></tr >< tr >< td > BCM_L3_ECMP_DYNAMIC_MODE_DISABLED</td >< td > ECMP dynamic load balancing disabled</td ></tr >< tr >< td > BCM_L3_ECMP_DYNAMIC_MODE_NORMAL</td >< td > ECMP dynamic load balancing normal mode
Definition: l3.dox:1936
int bcm_field_qualify_HiGigDstPortGport(int unit, bcm_field_entry_t entry, bcm_gport_t port_id, bcm_gport_t mask)
Set match criteria for bcmFieldQualifyHiGigDstPortGport qualifier in the field entry.
int bcm_field_qualify_Ip6HopLimit(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_Ip6HopLimit
int bcm_field_qualify_INTProbeMarker2_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyINTProbeMarker2 qualifier for a given field entry.
int bcm_field_qualify_HiGigDstMulticastGroupId_get(int unit, bcm_field_entry_t entry, bcm_multicast_t *group, bcm_multicast_t *mask)
Get match criteria for bcmFieldQualifyHiGigDstMulticastGroupId qualifier from the field entry.
int bcm_field_qualify_ReplicantFirst_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for ReplicantFirst qualifier.
int bcm_field_qualify_SrcIp6(int unit, bcm_field_entry_t entry, bcm_ip6_t data, bcm_ip6_t mask)
bcm_field_qualify_SrcIp6
bcm_field_pkt_queue_notif_e
Definition: field.h:48730
int bcm_field_qualify_L2Learn_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for L2Learn qualifier.
int bcm_field_qualify_VxlanPayloadVlanFormat(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyVxlanPayloadVlanFormat qualifier in the field entry.
int bcm_field_qualify_SrcIp6ClassMsbNibble_get(int unit, bcm_field_entry_t entry, bcm_class_t *data, bcm_class_t *mask)
Get match criteria for bcmFieldQualifySrcIp6ClassMsbNibble qualifier from the field entry.
int bcm_field_qualify_TosClassOne_get(int unit, bcm_field_entry_t entry, bcm_class_t *data, bcm_class_t *mask)
Get match criteria for bcmFieldQualifyTosClassOne qualifier from the field entry.
struct bcm_field_fem_action_info_s bcm_field_fem_action_info_t
int bcm_field_qualify_PtpMsgType_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyPtpMsgType qualifier from the field entry.
int bcm_field_qualify_VpnUnknownDstMacDstPort(int unit, bcm_field_entry_t entry, bcm_gport_t port_id)
Set match criteria for bcmFieldQualifyVpnUnknownDstMacDstPort qualifier in the field entry.
int bcm_field_sat_macsa_get(int unit, bcm_mac_t mac, uint32 *class_id)
Get class_id for given Source MAC Address of SAT packet.
int bcm_field_qualify_DstIpClassLower_get(int unit, bcm_field_entry_t entry, bcm_class_t *data, bcm_class_t *mask)
Get match criteria for bcmFieldQualifyDstIpClassLower qualifier from the field entry.
int bcm_field_ace_entry_add(int unit, uint32 flags, bcm_field_ace_format_t ace_format_id, bcm_field_ace_entry_info_t *entry_info, uint32 *entry_handle)
This function adds new entry in hardware to indicated ACE format.
int bcm_field_qualify_HiGigSrcTrunk_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyHiGigSrcTrunk qualifier from the field entry.
int bcm_field_qualify_FlowtrackerDisabled(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Qualifies on event whether Flowtracker flow tracking is disabled.
int bcm_field_entry_stat_extended_attach(int unit, bcm_field_entry_t entry, int stat_id, bcm_field_stat_action_t stat_action)
Attach statistics with stat action entity to Field Processor entry.
int bcm_field_qualify_CapwapPayloadOuterVlan_get(int unit, bcm_field_entry_t entry, bcm_vlan_t *data, bcm_vlan_t *mask)
Get match criteria for bcmFieldQualifyCapwapPayloadOuterVlan qualifier from the field entry.
int bcm_field_qualify_DstVxlanGports(int unit, bcm_field_entry_t entry, bcm_gport_t vxlan_port_id, bcm_gport_t vxlan_port_mask)
bcm_field_qualify_DstVxlanGports
int bcm_field_qualify_TunnelAltSrcIp6_get(int unit, bcm_field_entry_t entry, bcm_ip6_t *data, bcm_ip6_t *mask)
Get value for bcmFieldQualifyTunnelAltSrcIp6 qualifier from the field entry.
int bcm_field_qualify_VlanTranslationValue_get(int unit, bcm_field_entry_t entry, uint64 *data, uint64 *mask)
Get match criteria for VlanTranslationValue qualifier.
int bcm_field_qualify_PktFwdType_get(int unit, bcm_field_entry_t entry, bcm_field_PktFwdType_t *type)
Get packet forward type field qualification from a field entry.
bcm_field_PortType_e
Definition: field.h:5207
int bcm_field_entry_operation(int unit, bcm_field_entry_oper_t *entry_oper)
Perform backup, restore and cleanup operations on a field entry.
bcm_field_action_attach_info_t action_info[BCM_FIELD_NUMBER_OF_ACTIONS_PER_GROUP]
Definition: field.h:38846
int bcm_field_qualify_SrcVxlanGport_get(int unit, bcm_field_entry_t entry, bcm_gport_t *vxlan_port_id)
Get match criteria for bcmFieldQualifySrcVxlanGport qualifier from the field entry.
int bcm_field_qualify_IngressInterfaceClassPort(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for bcmFieldQualifyIngressInterfaceClassPort qualifier in the field entry.
int bcm_field_qualify_SubportPktTag(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
bcm_field_qualify_SubportPktTag
int bcm_field_qualify_StaggeredValue1_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Set match criteria for bcmFieldQualifyStaggeredValue1_get.
bcm_field_PktFwdType_e
Definition: field.h:5686
int bcm_field_presel_group_destroy(int unit, bcm_field_presel_group_t presel_group)
Destroys a given field presel group.
int bcm_field_qualify_Ip6PktHopLimit_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyIp6PktHopLimit qualifier from the field entry.
int bcm_field_qualify_Ip4Length(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Configure match criteria for bcmFieldQualifyIp4Length qualifier for the field entry.
int bcm_field_action_width_set(int unit, uint32 flags, int internal_action, uint32 width)
Set new width (in bits) to a specific action. Width may be required to be the default value.
int bcm_field_qualify_ExternalHit4(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyExternalHit4 qualifier in the field entry.
int bcm_field_qualify_EtherType(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
bcm_field_qualify_EtherType
int bcm_field_qualify_DstIp6ClassMsbNibble(int unit, bcm_field_entry_t entry, bcm_class_t data, bcm_class_t mask)
Configure match criteria for bcmFieldQualifyDstIp6ClassMsbNibble qualifier from the field entry.
int bcm_field_qualify_IpmcHit_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for IpmcHit qualifier.
uint8 bcm_ip6_t[16]
Definition: types.h:96
enum bcm_field_LoopbackType_e bcm_field_LoopbackType_t
int bcm_field_qualify_DstMultipathLevel2_get(int unit, bcm_field_entry_t entry, bcm_if_t *data, bcm_if_t *mask)
Get match criteria for Level 2 ECMP groups from a field entry.
Definition: field.h:39020
int bcm_field_qualify_CosMapSelect(int unit, bcm_field_entry_t entry, bcm_field_cos_map_select_t cos_map_select)
To Qualify on the COS Map type type of bcm_field_cos_map_select_t.
int bcm_field_qualify_CapwapPayloadL4HdrParseable(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyCapwapPayloadL4HdrParseable qualifier in the field entry.
int bcm_field_qualify_DstNivGports_get(int unit, bcm_field_entry_t entry, bcm_gport_t *niv_port_id, bcm_gport_t *niv_port_mask)
Get match criteria for bcmFieldQualifyDstNivGports qualifier from the field entry.
int bcm_field_qualify_CapwapPayloadDstMac(int unit, bcm_field_entry_t entry, bcm_mac_t data, bcm_mac_t mask)
Set match criteria for bcmFieldQualifyCapwapPayloadDstMac qualifier in the field entry.
int bcm_field_qualify_DstL2MulticastGroup_get(int unit, bcm_field_entry_t entry, bcm_multicast_t *group, bcm_multicast_t *mask)
Get match criteria for bcmFieldQualifyDstL2MulticastGroup qualifier from the field entry.
int bcm_field_qualify_VxlanClassValid(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyVxlanClassValid qualifier in the field entry.
int bcm_field_qualify_IncomingIpIfClass_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for IncomingIpIfClass qualifier.
int bcm_field_qualify_IpType(int unit, bcm_field_entry_t entry, bcm_field_IpType_t type)
bcm_field_qualify_IpType
int bcm_field_qualify_OuterTpid_get(int unit, bcm_field_entry_t entry, uint16 *tpid)
Get match criteria for bcmFieldQualifyOuterTpid qualifier from the field entry.
int bcm_field_qualify_L3Ingress(int unit, bcm_field_entry_t entry, uint32 intf_id, uint32 mask)
bcm_field_qualify_L3Ingress
enum bcm_field_packet_remove_layers_e bcm_field_packet_remove_layers_t
int bcm_field_qualify_SRLanId_get(int unit, bcm_field_entry_t entry, int *lan_id)
Get match criteria for bcmFieldQualifySRLanId.
int bcm_field_show(int unit, const char *pfx)
Show current software state of the field module.
int bcm_field_qualify_DstPortSRMode(int unit, bcm_field_entry_t entry, bcm_field_sr_port_mode_t type, uint8 mask)
Set match criteria for bcmFieldQualifyDstPortSRMode.
bcm_field_group_t overriding_fg_id
Definition: field.h:40055
int bcm_field_qualify_FibreChanSrcId_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyFibreChanSrcId qualifier from the field entry.
int bcm_field_group_create_mode_id(int unit, bcm_field_qset_t qset, int pri, bcm_field_group_mode_t mode, bcm_field_group_t group)
Create a field group.
int bcm_field_qualify_L4DstPortClass(int unit, bcm_field_entry_t entry, bcm_class_t data, bcm_class_t mask)
Configure match criteria for bcmFieldQualifyL4DstPortClass qualifier from the field entry.
int bcm_field_qualify_DstClassL3_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyDstClassL3 qualifier from the field entry.
int bcm_field_qualify_Color(int unit, bcm_field_entry_t entry, uint8 color)
Set match criteria for bcmFieldQualifyColor qualifier in the field entry.
int bcm_field_qualify_DstIpClassMsbNibble(int unit, bcm_field_entry_t entry, bcm_class_t data, bcm_class_t mask)
Configure match criteria for bcmFieldQualifyDstIpClassMsbNibble qualifier from the field entry.
int bcm_field_presel_create_id(int unit, bcm_field_presel_t presel_id)
Create a preselection specification using a specific ID.
int bcm_field_qualify_L5PayloadByte8_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyL5PayloadByte8 qualifier from the field entry.
bcm_vlan_t bcm_vpn_t
Definition: types.h:153
int bcm_field_qualify_HiGigDstTrunk(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyHiGigDstTrunk qualifier in the field entry.
uint64 bcm_class_t
Definition: types.h:122
int bcm_field_qualify_Drop(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_Drop
int bcm_field_qualify_OamHeaderBits0_31_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for OamHeaderBits0_31 qualifier.
int bcm_field_qualify_CopyToCpu(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on packet marked as copy to CPU.
int bcm_field_data_qualifier_packet_format_add(int unit, int qual_id, bcm_field_data_packet_format_t *packet_format)
Add packet format-based offset to data qualifier object.
int bcm_field_entry_info_get(int unit, bcm_field_group_t fg_id, bcm_field_entry_t entry_handle, bcm_field_entry_info_t *entry_info)
Get info for specific a field group by entry id.
bcm_field_flow_timestamp_type_e
Definition: field.h:5927
int bcm_field_qualify_PacketLengthRangeCheck_get(int unit, bcm_field_entry_t entry, int max_count, bcm_field_range_t *range, int *invert, int *count)
Get match criteria for PacketLengthRangeCheck qualifier from the field entry.
bcm_field_group_cycle_t cycle
Definition: field.h:9305
int bcm_field_qualify_ForwardCode(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyForwardCode qualifier in the field entry.
int bcm_field_qualify_ExactMatchOpaqueObject0(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
To qualify on opaque object 0 provided by exact match or flowtracker stage.
uint32 priority
Definition: field.h:39045
int bcm_field_range_type_config_get(int unit, uint32 flags, bcm_field_stage_t stage, bcm_field_context_t context_id, uint32 configurable_range_index, bcm_field_range_qual_info_t *range_qualifier_info)
Returns the L4 OPS Extended FFCs configuration.
int bcm_field_qualify_TrunkHashResult(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for TrunkHashResult qualifier.
int bcm_field_qualify_OpaqueObject2(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
To Qualify on Opaque Object2 which was assigned by Flex modules for example NSH, INT....
int bcm_field_qualify_MplsOamHeaderBits32_63_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for MplsOamHeaderBits32_63 qualifier.
int bcm_field_qualify_OamStampOffset(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for OamStampOffset qualifier.
int bcm_field_qualify_FibreChanVFTFabricId_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get match criteria for bcmFieldQualifyFibreChanVFTFabricId qualifier from the field entry.
struct bcm_field_data_ethertype_s bcm_field_data_ethertype_t
int bcm_field_qualify_VlanSRLanId_get(int unit, bcm_field_entry_t entry, uint8 *lan_id)
Get match criteria for bcmFieldQualifyVlanSRLanId.
int bcm_field_entry_enable_set(int unit, bcm_field_entry_t entry, int enable_flag)
Enable/Disable an entry from the hardware table.
int bcm_field_qualify_OuterVlanActionRange(int unit, bcm_field_entry_t entry, bcm_vlan_t data, bcm_vlan_t mask)
Set match criteria for OuterVlanActionRange qualifier.
int bcm_field_qualify_AppType_get(int unit, bcm_field_entry_t entry, bcm_field_AppType_t *type)
Get match criteria for bcmFieldQualifyAppType qualifier from the field entry.
void bcm_field_fem_action_info_t_init(bcm_field_fem_action_info_t *fem_action_info)
Initialize the bcm_field_fem_action_info_t structure.
int bcm_field_qualify_CapwapPayloadOuterVlanCfi(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyCapwapPayloadOuterVlanCfi qualifier in the field entry.
int bcm_field_qualify_NativeVSwitchValid_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for NativeVSwitchValid qualifier.
uint32 bcm_field_context_t
Definition: field.h:9025
int bcm_field_qualify_EffectiveTtl_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyEffectiveTtl qualifier from the field entry.
enum bcm_field_sys_hdr_type_e bcm_field_sys_hdr_type_t
struct bcm_field_stage_info_s bcm_field_stage_info_t
int bcm_field_qualify_FibreChanSrcBindCheck(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyFibreChanSrcBindCheck qualifier in the field entry.
uint32 stat_id
Definition: l3.dox:872
bcm_field_AppType_e
Definition: field.h:5022
int bcm_field_qualify_LearnVlan(int unit, bcm_field_entry_t entry, bcm_vlan_t data, bcm_vlan_t mask)
Set match criteria for LearnVlan qualifier.
int bcm_field_qualify_TunnelAltL4SrcPort(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
To qualify on alternate tunnel l4 source port.
int bcm_field_qualify_ExternalHit5(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyExternalHit5 qualifier in the field entry.
bcm_field_group_mode_t mode
Definition: field.h:9237
int bcm_field_qualify_Decap_get(int unit, bcm_field_entry_t entry, bcm_field_decap_t *decap)
bcm_field_qualify_Decap_get
int bcm_field_qualify_TunnelAltDstIp_get(int unit, bcm_field_entry_t entry, bcm_ip_t *data, bcm_ip_t *mask)
Get value for bcmFieldQualifyTunnelAltDstIp qualifier from the field entry.
int bcm_field_qualify_OuterL4Info_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get value for bcmFieldQualifyOuterL4Info qualifier from the field entry.
enum bcm_field_macsec_flow_e bcm_field_macsec_flow_t
int bcm_field_qualify_IpFragInfo_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get match criteria for bcmFieldQualifyIpFragInfo from a field entry.
int bcm_field_qualify_SrcIp6High_get(int unit, bcm_field_entry_t entry, bcm_ip6_t *data, bcm_ip6_t *mask)
Get match criteria for bcmFieldQualifySrcIp6High qualifier from the field entry.
int bcm_field_qualify_CnTag_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyCnTag qualifier from the field entry.
bcm_field_group_external_info_t external_info
Definition: field.h:37943
int bcm_field_qualify_FlowtrackerAggregateClass_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get qualified inputs on Flowtracker Aggregate Class.
bcm_field_presel_set_t group_ref
Definition: field.h:9242
bcmFieldHeaderFormatExtensionMplsL4IPV6isH4</td ></tr >< tr >< td > HeaderFormatExtensionMplsL4IPV4isH5</td >< td > L4 stands for UDP TCP Hit is marked when parser speculates following the next protocol is Ethernet followed by L4 of following the next protocol is Ethernet followed by L4 of remove or test individual qualifier bits in the qualifier set q Add a bit to a qualifier set q Test if a bit is set in a qualifier set On certain actions are collected into action and test individual actions within the action set a Add an action to an action set a Test if an action is included in an aset The following macro defines the maximum width of all actions in field processor module BCM_FIELD_ASET_WIDTH_MAX maximum value to indicate the total width of all actions In certain where it is possible to specify more than a single header header format sets are used This allows multiple header formats to be specified anchor fp_bcm_field_header_format_set_t hf Add a header hf Add a header hf Remove a header format from a bcm_field_header_format_set_t hf Test whether a header format is included in a bcm_field_header_format_set_t length Define the parameters for the action in a Direct mode Field Qualifier and bcmFieldQualifyStageEgressSecurity are special qualifiers to specify the field processor where the field group should be created Only one stage should be added to the qset to create a group If the qset used does not specify any stage
Definition: field.dox:5174
int bcm_field_qualify_Ip6Length_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get match criteria for bcmFieldQualifyIp6Length qualifier from the field entry.
bcm_field_context_hash_action_key_t action_key
Definition: field.h:39477
to the profile properties</td ></tr >< tr >< td > int stat_pp_profile</td >< td > Delete profile properties according to stat_pp_profile</td ></tr >< tr >< td > uint32 bcm_stat_counter_database_t *database</td >< td > API destroy a counter database</td ></tr >< tr >< td > uint32 bcm_stat_counter_database_t bcm_stat_counter_enable_t *enable</td >< td > determine the enabler status of the database</td ></tr >< tr >< td > uint32 bcm_stat_counter_database_t int engine_id</td >< td > API detach engine from database</td ></tr >< tr >< td > uint32 bcm_stat_counter_database_t bcm_stat_counter_database_control_t control
Definition: stat.dox:3262
int bcm_field_qualify_IpFragPkt_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get to match on IP Fragment packet qualification from a field entry.
bcm_field_context_hash_action_key_e
Definition: field.h:39428
int bcm_field_group_create_id(int unit, bcm_field_qset_t qset, int pri, bcm_field_group_t group)
Create a field group.
int bcm_field_efes_action_add(int unit, uint32 flags, bcm_field_group_t fg_id, bcm_field_context_t context_id, bcm_field_action_priority_t *encoded_position, bcm_field_efes_action_info_t *efes_action_info)
This function adds an EFES to a specific field group and context pair.
int bcm_field_qualify_IEEE1588CompensateTimeStamp(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for field_qualify_IEEE1588CompensateTimeStamp.
int bcm_field_qualify_L2SrcValue(int unit, bcm_field_entry_t entry, uint64 data, uint64 mask)
Set match criteria for L2SrcValue qualifier.
int bcm_field_qualify_SrcGport(int unit, bcm_field_entry_t entry, bcm_gport_t port_id)
Set match criteria for SrcGport qualifier.
int bcm_field_qualify_MHPriority(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on Module Header Priority.
int bcm_field_qualify_CosQueueNum_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get value for bcmFieldQualifyCosQueueNum qualifier from the field entry.
struct bcm_field_entry_info_s bcm_field_entry_info_t
int bcm_field_range_info_get(int unit, bcm_field_stage_t stage, bcm_field_range_t *range_id, bcm_field_range_info_t *range_info)
Set new Field Range used for range qualifier.
int bcm_field_qualify_FibreChanOuter_get(int unit, bcm_field_entry_t entry, bcm_field_FibreChan_t *fibre_chan_type)
Get Fibre Channel outer header type field qualification from a field entry.
int bcm_field_qualify_SrcMimGport(int unit, bcm_field_entry_t entry, bcm_gport_t mim_port_id)
bcm_field_qualify_SrcMimGport
enum bcm_field_stage_e bcm_field_stage_t
int bcm_field_qualify_EthernetOamHeaderBits0_31(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for EthernetOamHeaderBits0_31 qualifier.
int bcm_field_qualify_FibreChanVFTFabricId(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Set match criteria for bcmFieldQualifyFibreChanVFTFabricId qualifier in the field entry.
bcm_field_presel_set_t preselset
Definition: field.h:9297
int bcm_field_qualify_IncomingOuterVlanId(int unit, bcm_field_entry_t entry, bcm_vlan_t data, bcm_vlan_t mask)
To qualify on the packet's Incoming Outer VLAN ID.
endcode< table >< tr >< th > API</th >< th > Brief</th ></tr >< tr >< td > bcm_tsn_sr_auto_learn_group_config_t int *group_id</td >< td > Create an SR auto learn group</td ></tr >< tr >< td > int bcm_tsn_sr_auto_learn_group_config_t *config</td >< td > Get the information to specified auto learn group ID</td ></tr >< tr >< td > bcm_tsn_sr_auto_learn_group_traverse_cb void *user_data</td >< td > Traverse all auto learn groups</td ></tr >< tr >< td > int bcm_tsn_sr_auto_learn_config_t *config</td >< td > Get the current status of SR auto learn</td ></tr ></table > section tsn_apis_supervision TSN Supervision A Broadcom proprietary packet match mechanism is provided based on SR HSR PRP protocol as well as Link protocol
Definition: tsn.dox:807
int bcm_field_qualify_InterfaceClassProcessingPort_get(int unit, bcm_field_entry_t entry, uint64 *data, uint64 *mask)
Get match criteria for InterfaceClassProcessingPort qualifier.
bcm_field_action_t action_type
Definition: field.h:40164
bcm_field_context_hash_config_t additional_hash_config[BCM_FIELD_NUMBER_OF_HASH_KEYS]
Definition: field.h:39511
int bcm_field_qualify_RoceVer1Pkt(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyRoceVer1Pkt qualifier in the field entry.
int bcm_field_qualify_OamEgressPortUnicastDstMacHit(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyOamEgressPortUnicastDstMacHit qualifier in the field entry.
int bcm_field_group_expansion_enable_get(int unit, bcm_field_group_t group, int *enable)
Get auto expansion status of a group.
int bcm_field_source_class_mode_get(int unit, bcm_field_stage_t stage, bcm_pbmp_t pbmp, bcm_field_src_class_mode_t *mode)
Gets the mixed source class ID generation mode configured in hardware for Field Ingress and Exact Mat...
int bcm_field_qualify_L3DestHostHit_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyL3DestHostHit qualifier from the field entry.
bcm_field_qualify_attach_info_t qual_info
Definition: field.h:47360
int bcm_field_entry_policer_detach_all(int unit, bcm_field_entry_t entry_id)
Detach all policers from a field entry.
int bcm_field_qualify_L5PayloadByte1_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyL5PayloadByte1 qualifier from the field entry.
struct bcm_field_qual_ce_info_s bcm_field_qual_ce_info_t
enum bcm_field_stat_oam_lm_index_e bcm_field_stat_oam_lm_index_t
int bcm_field_qualify_L3DestRouteValue(int unit, bcm_field_entry_t entry, uint64 data, uint64 mask)
Set match criteria for L3DestRouteValue qualifier.
int bcm_field_qualify_StaggeredPreselProfileDirect(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for bcmFieldQualifyStaggeredPreselProfileDirect.
int bcm_field_qualify_TunnelId_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyTunnelId qualifier in the field entry.
int bcm_field_qualify_FibreChanInner(int unit, bcm_field_entry_t entry, bcm_field_FibreChan_t fibre_chan_type)
Add Fibre Channel inner header type field qualification to a field entry.
int bcm_field_qualify_DstMulticastGroups_get(int unit, bcm_field_entry_t entry, bcm_multicast_t *group, bcm_multicast_t *mask)
Get match criteria for bcmFieldQualifyDstMulticastGroups qualifier from the field entry.
int bcm_field_qualify_ForwardHdrDstMac(int unit, bcm_field_entry_t entry, bcm_mac_t data, bcm_mac_t mask)
Set match criteria for bcmFieldQualifyForwardHdrDstMac qualifier from the field entry.
int bcm_field_qualify_FcoeSOF(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyFcoeSOF qualifier in the field entry.
int bcm_field_qualify_L2EgrIntfEfpCtrlId(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on L2 Egr Interface control id.
int bcm_field_qualify_TunnelTerminationProcessingProfile_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyTunnelTerminationProcessingProfile qualifier from the field ent...
int bcm_field_detach(int unit)
De-initialize field software subsystem.
int bcm_field_qualify_VxlanFlags(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyVxlanFlags qualifier in the field entry.
int bcm_field_group_default_entry_get(int unit, bcm_field_group_t group, bcm_field_entry_t *entry)
Get default entry id associated to a group.
int bcm_field_qualify_PreselId(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for bcmFieldQualifyPreselId.
enum bcm_field_context_hash_action_key_e bcm_field_context_hash_action_key_t
int bcm_field_qualify_L2MacInfo_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get packet L2 mac info qualification from a field entry.
int bcm_field_qualify_InterfaceClassMpls(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
To qualify on class id retreived from forwarding MPLS lookup.
int bcm_field_presel_set(int unit, uint32 flags, bcm_field_presel_entry_id_t *entry_id, bcm_field_presel_entry_data_t *entry_data)
Set a preselector entity information.
int bcm_field_qualify_Fhei(int unit, bcm_field_entry_t entry, uint64 data, uint64 mask)
Set match criteria for Fhei qualifier.
int bcm_field_qualify_L2InterfaceMatch_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyL2InterfaceMatch qualifier from the field entry.
int bcm_field_qualify_RxTrapStrength(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for RxTrapStrength qualifier.
int bcm_field_qualify_L2DstMiscClassId_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyL2DstMiscClassId from a field entry.
int bcm_field_qualify_MimlDstMac(int unit, bcm_field_entry_t entry, bcm_mac_t data, bcm_mac_t mask)
Set match criteria for bcmFieldQualifyMimlDstMac qualifier in the field entry.
int bcm_field_qualify_GeneratedTtl(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
This API Qualify on forwarding TTL. may be selected on tunnel basis to be taken from the tunnel layer...
uint8 delete_cmd
Definition: field.h:50171
void bcm_field_range_info_t_init(bcm_field_range_info_t *range_info)
Map a presel id to a name.
int bcm_field_qualify_SrcWlanGports(int unit, bcm_field_entry_t entry, bcm_gport_t wlan_port_id, bcm_gport_t wlan_port_mask)
bcm_field_qualify_SrcWlanGports
bcm_field_fabric_header_e
Definition: field.h:25044
int bcm_field_qualify_CopyToCpuTruncate_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyCopyToCpuTruncate qualifier from the field entry.
int bcm_field_qualify_InnerTpid(int unit, bcm_field_entry_t entry, uint16 tpid)
bcm_field_qualify_InnerTpid
bcm_field_hint_type_e
Definition: field.h:27123
int bcm_field_qualify_OverlayEgressClass(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Set match criteria for OverlayEgressClass ID qualifier.
int bcm_field_qualify_MplsMcastEthertypePresent(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
API to add MPLS Multicast EtherType present status to a field entry for qualification.
int bcm_field_qualify_RxTrapData(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for RxTrapData qualifier.
int bcm_field_qualify_TunnelHeaderIpProtocol(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyTunnelHeaderIpProtocol qualifier in the field entry.
int bcm_field_qualify_HiGigOffloadEngineClassificationTag_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get match criteria for bcmFieldQualifyHiGigOffloadEngineClassificationTag qualifier from the field en...
bcm_field_qualify_t qual_type
Definition: field.h:47358
int bcm_field_qualify_IfaCurrentLength(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
To qualify on IFA metadata header current length.
Definition: field.h:50153
int bcm_field_qualify_TranslatedOuterVlanId(int unit, bcm_field_entry_t entry, bcm_vlan_t data, bcm_vlan_t mask)
Set match criteria for bcmFieldQualifyTranslatedOuterVlanId qualifier in the field entry.
struct bcm_field_flowtrackercheck_s bcm_field_flowtrackercheck_t
int bcm_field_qualify_OverlayPktType(int unit, bcm_field_entry_t entry, bcm_field_pkt_type_t type)
API to add Overlay Packet type of a tunnel terminated packet to a field entry for qualification.
int bcm_field_qualify_VxlanNetworkId(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for bcmFieldQualifyVxlanNetworkId qualifier in the field entry.
int bcm_field_qualify_TranslatedOuterVlanPri_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyTranslatedOuterVlanPri qualifier from the field entry.
int bcm_field_qualify_LearnExtension(int unit, bcm_field_entry_t entry, uint8 data)
Set enable criteria for LearnExtension qualifier.
void bcm_field_data_packet_format_t_init(bcm_field_data_packet_format_t *packet_format)
Initialize the bcm_field_data_packet_format_s structure.
int bcm_field_qualify_FabricQueueTag(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
bcm_field_qualify_FabricQueueTag
int bcm_field_qualify_VlanTranslationValue(int unit, bcm_field_entry_t entry, uint64 data, uint64 mask)
Set match criteria for VlanTranslationValue qualifier.
int bcm_field_qualify_EgressTunnelIpHeaderDscp(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for EgressTunnelIpHeaderDscp qualifier.
int bcm_field_qualify_RepCopy(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for RepCopy qualifier.
int bcm_field_qualify_TunnelHeaderSip6_get(int unit, bcm_field_entry_t entry, bcm_ip6_t *data, bcm_ip6_t *mask)
Get match criteria for bcmFieldQualifyTunnelHeaderSip6 qualifier from the field entry.
int bcm_field_qualify_Ip6PktNextHeader(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Configure match criteria for bcmFieldQualifyIp6PktNextHeader qualifier for the field entry.
int bcm_field_qualify_L2PktType_get(int unit, bcm_field_entry_t entry, bcm_field_l2_pkt_type_t *type)
API to retrieve L2 Packet type associated to a field entry.
int bcm_field_qualify_CpuVisibilityPacket(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyCpuVisibilityPacket qualifier in the field entry.
int bcm_field_qualify_OamInLifId_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for OamInLifId qualifier.
int bcm_field_qualify_OuterVlanRangeMatch(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on outer vlan range match status.
int bcm_field_qualify_IOAMRemainingLenValid_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
To get qualified inputs on In-situ OAM header valid Remaining Length.
int bcm_field_qualify_L3SrcBind(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_L3SrcBind
int bcm_field_qualify_RecircleHdrOpaqueCtrlIdC(int unit, bcm_field_entry_t entry, int data, int mask)
To qualify on EP NIH Header Opaque property value.
int bcm_field_qualify_Loopback(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Add loopback field qualification to a field entry.
int bcm_field_qualify_AppType(int unit, bcm_field_entry_t entry, bcm_field_AppType_t type)
bcm_field_qualify_AppType
int bcm_field_qualify_L3Routable_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyL3Routable qualifier from the field entry.
int bcm_field_qualify_IfaNextHdr_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyIfaNextHdr from a field entry.
int bcm_field_qualify_BfdMultiplierLen_get(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Get match criteria for BFD Multiplier Length.
bcm_field_crc_select_e
Definition: field.h:39461
int bcm_field_qualify_BfdPktVersionOne(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Add to match on BFD version packet qualification to a field entry.
int bcm_field_qualify_FcoeOxIDClass(int unit, bcm_field_entry_t entry, bcm_class_t data, bcm_class_t mask)
Configure match criteria for bcmFieldQualifyFcoeOxIDClass qualifier from the field entry.
int bcm_field_qualify_ExternalValue2_get(int unit, bcm_field_entry_t entry, uint64 *data, uint64 *mask)
Get match criteria for bcmFieldQualifyExternalValue2 qualifier in the field entry.
int bcm_field_qualify_IntFlags_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for IntFlags qualifier.
int bcm_field_qualify_FirstDropReason_get(int unit, bcm_field_entry_t entry, bcm_field_drop_reason_t *type)
API to retrieve First Drop reason associated to a field entry.
int bcm_field_qualify_DstSysPortExt(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Set match criteria for DSP Extension qualifier.
int bcm_field_qualify_Ip4Length_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get match criteria for bcmFieldQualifyIp4Length qualifier from the field entry.
enum bcm_field_macsec_encrypt_decrypt_pkt_e bcm_field_macsec_encrypt_decrypt_pkt_t
int bcm_field_qualify_EgressTunnelIpHeaderEcn_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for EgressTunnelIpHeaderEcn qualifier.
enum bcm_field_double_action_vals_e bcm_field_double_action_vals_t
int bcm_field_qualify_IpProtocolClass(int unit, bcm_field_entry_t entry, bcm_class_t data, bcm_class_t mask)
Configure match criteria for bcmFieldQualifyIpProtocolClass qualifier from the field entry.
int bcm_field_group_enable_get(int unit, bcm_field_group_t group, int *enable)
Get or set the group enable state.
int bcm_field_qualify_LoopBackColor(int unit, bcm_field_entry_t entry, uint8 color)
Set match criteria for bcmFieldQualifyLoopBackColor qualifier in the field entry.
int bcm_field_qualify_LoopBackColor_get(int unit, bcm_field_entry_t entry, uint8 *color)
Get match criteria for bcmFieldQualifyLoopBackColor qualifier from the field entry.
int bcm_field_qualify_ArpTargetIp4(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for bcmFieldQualifyArpTargetIp4 qualifier in the field entry.
bcm_field_name_to_id_type_t name_to_id_type
Definition: field.h:39253
int bcm_field_qualify_TranslatedOuterVlanCfi_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyTranslatedOuterVlanCfi_get qualifier from the field entry.
enum bcm_field_ip_option_hdr_type_e bcm_field_ip_option_hdr_type_t
int bcm_field_qualify_EgressClassVxlan_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get match criteria for EgressClassVxlan qualifier.
int bcm_field_qualify_CapwapPayloadOuterVlanPri(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyCapwapPayloadOuterVlanPri qualifier in the field entry.
int bcm_field_qualify_TunnelPayloadSip6_get(int unit, bcm_field_entry_t entry, bcm_ip6_t *data, bcm_ip6_t *mask)
Get match criteria for bcmFieldQualifyTunnelPayloadSip6 qualifier from the field entry.
int bcm_field_qualify_HiGigPreserveFlags_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyHiGigPreserveFlags qualifier from the field entry.
endcode Since this structure is a consolidated structure for managing three different objects the fields in the structure could be mutually exclusive depending on which type of object is being managed The flags field is used to differentiate between these The following flags are defined and the flags field could be a logical or of multiple of these int index
Definition: l3.dox:4133
int bcm_field_qualify_CustomHeaderData_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyCustomHeaderData qualifier from the field entry.
int bcm_field_qualify_IpTunnelTtl(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Configure match criteria for bcmFieldQualifyIpTunnelTtl qualifier from the field entry.
int bcm_field_qualify_IntPktLengthValid_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get to match on INT (Inband-Telemetry) Valid Length Check packet qualification from a field entry.
int bcm_field_qualify_L3SrcRouteValue(int unit, bcm_field_entry_t entry, uint64 data, uint64 mask)
Set match criteria for L3SrcRouteValue qualifier.
int bcm_field_qualify_OamEgressClassPort(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Set match criteria for bcmFieldQualifyOamEgressClassPort.
int bcm_field_qualify_EgressClassTunnel(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Set match criteria for EgressClassTunnel qualifier.
int bcm_field_qualify_InnerVlanTagPreserve_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyInnerVlanTagPreserve qualifier from the field entry.
int bcm_field_entry_copy_id(int unit, bcm_field_entry_t src_entry, bcm_field_entry_t dst_entry)
Create a copy of an existing field entry.
int bcm_field_qualify_FibreChanVFTHopCount_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyFibreChanVFTHopCount qualifier from the field entry.
bcm_field_group_mode_type_t mode_type
Definition: field.h:9256
void bcm_field_copytocpu_config_t_init(bcm_field_CopyToCpu_config_t *CopyToCpu_config)
Initialize the Copy To CPU Field Config structure.
int bcm_field_qualify_L3SrcHostHit(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_L3SrcHostHit
int bcm_field_qualify_VxlanHeaderBits56_63_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for Reserved_2 field in Vxlan Header.
int bcm_field_qualify_MplsOamControlPktType_get(int unit, bcm_field_entry_t entry, bcm_field_MplsOam_Control_pktType_t *data)
Get match criteria for bcmFieldQualifyMplsOamControlPktType.
int bcm_field_qualify_EgressClassL3InterfaceTunnel_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get match criteria for EgressClassL3InterfaceTunnel qualifier.
int bcm_field_qualify_HiGigVpLagFailoverPacket(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyHiGigVpLagFailoverPacket qualifier in the field entry.
void bcm_field_destination_action_t_init(bcm_field_destination_action_t *action)
Initialize the field destination action structure.
int bcm_field_qualify_Ipv6ExtensionHdrType_get(int unit, bcm_field_entry_t entry, bcm_field_ip_option_hdr_type_t *type)
API to retrieve IPv6 Extension header type associated to a field entry.
int bcm_field_qualify_OpaqueTagLow(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Qualifies on the lower 32 bits of opaque tag allowed in the system.
enum bcm_field_DstType_e bcm_field_DstType_t
int bcm_field_qualify_RoceBthFlags(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyRoceBthFlags qualifier in the field entry.
int bcm_field_qualify_OuterL2MacInfo_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get value for bcmFieldQualifyOuterL2MacInfo qualifier from the field entry.
bcm_field_qual_ce_info_t qual_info[BCM_FIELD_NOF_QUALS_PER_FG]
Definition: field.h:9157
int bcm_field_qualify_BfdGoodPkt(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
API to match on BFD Good packet (Good here represents the valid TTL range for 1-hop and M-hop).
int bcm_field_qualify_StaggeredValue3_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Set match criteria for bcmFieldQualifyStaggeredValue3_get.
int bcm_field_qualify_PtpVersion(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on PTP packet version.
bcm_field_TunnelSubType_e
Definition: field.h:37276
int bcm_field_qualify_OutPorts(int unit, bcm_field_entry_t entry, bcm_pbmp_t data, bcm_pbmp_t mask)
bcm_field_qualify_OutPorts
int bcm_field_qualify_L3DestHit_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyL3DestHit qualifier from the field entry.
int bcm_field_action_redirect_config_get(int unit, bcm_field_entry_t entry, bcm_field_redirect_config_t *redirect_config)
Gets the configured Redirect action parameters to Redirect Field Config structure.
bcm_field_context_key_info_t second_key_info
Definition: field.h:39521
int bcm_field_qualify_MplsLabel1Bos_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for MplsLabel1Bos qualifier.
int bcm_field_qualify_TunnelPayloadSrcMac(int unit, bcm_field_entry_t entry, bcm_mac_t data, bcm_mac_t mask)
Set match criteria for bcmFieldQualifyTunnelPayloadSrcMac qualifier in the field entry.
int bcm_field_qualify_RoceBthOpcode_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyRoceBthOpcode qualifier in the field entry.
int bcm_field_qualify_HiGigSrcPortGport(int unit, bcm_field_entry_t entry, bcm_gport_t port_id, bcm_gport_t port_mask)
Set match criteria for bcmFieldQualifyHiGigSrcPortGport qualifier in the field entry.
int bcm_field_qualify_DropReason_get(int unit, bcm_field_entry_t entry, bcm_field_drop_reason_t *type)
API to retrieve Drop reason associated to a field entry.
int bcm_field_qualify_StaggeredValue2(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for bcmFieldQualifyStaggeredValue2.
int bcm_field_qualify_OuterVlanCfi(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyOuterVlanCfi qualifier in the field entry.
int bcm_field_qualify_PphType_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyPphType qualifier from the field entry.
uint32 value[BCM_FIELD_ACTION_WIDTH_IN_WORDS]
Definition: field.h:50120
int bcm_field_qualify_TunnelAltEtherType_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get value for bcmFieldQualifyTunnelAltEtherType qualifier from the field entry.
int bcm_field_qualify_BypassFilter32_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for BypassFilter qualifier (32-bits).
int bcm_field_qualify_L2DestHit(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_L2DestHit
int bcm_field_qualify_SubportGroupIds(int unit, bcm_field_entry_t entry, uint32 num_groups, bcm_subport_port_group_t *subport_group_id_arr)
Set match criteria for bcmFieldQualifySubportGroupIds qualifier in the field entry.
struct bcm_field_data_qualifier_s bcm_field_data_qualifier_t
int bcm_field_qualify_IpmcStarGroupValue(int unit, bcm_field_entry_t entry, uint64 data, uint64 mask)
Set match criteria for IpmcStarGroupValue qualifier.
int bcm_field_qualify_TunnelPayloadIp6Length_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get match criteria for bcmFieldQualifyTunnelPayloadIp6Length qualifier from the field entry.
bcm_field_olp_header_type_e
Definition: field.h:5494
void bcm_field_udf_spec_t_init(bcm_field_udf_spec_t *udf_spec)
Initialize UDF specification structure.
int bcm_field_qualify_VlanSREnable_get(int unit, bcm_field_entry_t entry, uint8 *data)
Get match criteria for bcmFieldQualifyVlanSREnable.
int bcm_field_qualify_PktDstAddrType(int unit, bcm_field_entry_t entry, uint32 dst_addr_type)
Configure Match criteria for bcmFieldQualifyPktDstAddrType qualifier for the field entry.
int bcm_field_qualify_MacSecDstMacRangeHit_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
To get the qualified inputs on the Destination MAC addresses range hit.
uint8 valid_bit_mask
Definition: field.h:50129
int bcm_field_qualify_StackingRoute(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for Stacking Route qualifier.
struct bcm_field_efes_action_info_s bcm_field_efes_action_info_t
bcm_field_flowtracker_timestamp_delay_mode_e
Definition: field.h:5912
int bcm_field_qualify_RoceBthOpcode(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyRoceBthOpcode qualifier in the field entry.
int bcm_field_qualify_DstType(int unit, bcm_field_entry_t entry, bcm_field_DstType_t dst_type)
Add packet destination type field qualification to a field entry.
int bcm_field_qualify_CosMapSelect_get(int unit, bcm_field_entry_t entry, bcm_field_cos_map_select_t *cos_map_select)
To get the qualified inputs on the COS Map type type of bcm_field_cos_map_select_t.
int bcm_field_qualify_OamEgressVxltFirstHit_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyOamEgressVxltFirstHit qualifier from the field entry.
int bcm_field_qualify_SrcMimGport_get(int unit, bcm_field_entry_t entry, bcm_gport_t *mim_port_id)
Get match criteria for bcmFieldQualifySrcMimGport qualifier from the field entry.
int bcm_field_qualify_MplsLabel2Bos_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for MplsLabel2Bos qualifier.
int bcm_field_qualify_FlowtrackerClassIdSource1(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
To qualify on Flowtracker Class from Source 1.
int bcm_field_qualify_EgressClassL2Gre(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Set match criteria for EgressClassL2Gre qualifier.
int bcm_field_qualify_Ttl(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_Ttl
int bcm_field_qualify_IpType_get(int unit, bcm_field_entry_t entry, bcm_field_IpType_t *type)
Get match criteria for bcmFieldQualifyIpType qualifier from the field entry.
int bcm_field_qualify_DstMplsGport_get(int unit, bcm_field_entry_t entry, bcm_gport_t *mpls_port_id)
Get match criteria for bcmFieldQualifyDstMplsGport qualifier from the field entry.
bcm_field_range_type_t range_type
Definition: field.h:40393
bcm_field_stage_t stage
Definition: field.h:39251
int bcm_field_qset_id_multi_get(int unit, bcm_field_qset_t qset, bcm_field_qualify_t qualifier, int max_objects, int *object_list, int *count_objects)
Get qualifier objects added to the field group qset.
int bcm_field_qualify_ReplicantAny_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for ReplicantAny qualifier.
int bcm_field_qualify_DstMplsGports_get(int unit, bcm_field_entry_t entry, bcm_gport_t *mpls_port_id, bcm_gport_t *mpls_port_mask)
Get match criteria for bcmFieldQualifyDstMplsGports qualifier from the field entry.
int bcm_field_qualify_Stage(int unit, bcm_field_entry_t entry, bcm_field_stage_t data)
Set qualification on a particular stage. This feature is normally used for preselectors.
int bcm_field_macsec_DstMacRange_get(int unit, bcm_mac_t *lower_limit, bcm_mac_t *upper_limit)
To get the configured lower and upper limits to be used by qualifier bcmFieldQualifyMacSecDstMacRange...
int bcm_field_qualify_MplsLabel7Ttl(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on MPLS label7 ttl value.
bcm_field_roe_frame_type_e
Definition: field.h:8388
int bcm_field_action_ports_add(int unit, bcm_field_entry_t entry, bcm_field_action_t action, bcm_pbmp_t pbmp)
Add an action to a field entry.
sequence RST and ACK not set</td ></tr >< tr >< td > BCM_FIELD_DOSATTACK_TCP_DSTPORT_ZERO</td >< td > Dos Attack Event when TCP packet with Destination port equals to</td ></tr >< tr >< td > BCM_FIELD_DOSATTACK_TCP_SRCPORT_ZERO</td >< td > Dos Attack Event when TCP packet with Source port equals to</td ></tr >< tr >< td > BCM_FIELD_DOSATTACK_TCP_DST_IP_BCAST</td >< td > Dos Attack Event when TCP Packet with Destination IP Broadcast</td ></tr >< tr >< td > BCM_FIELD_DOSATTACK_TCPFLAGS_ZERO</td >< td > Dos Attack Event when configured TCP flags is zero</td ></tr >< tr >< td > BCM_FIELD_DOSATTACK_TCPFLAGS_RESVD_NONZERO</td >< td > Dos Attack Event when configured Reserved flags is non zero</td ></tr >< tr >< td > BCM_FIELD_DOSATTACK_TCPFLAGS_ACK</td >< td > Dos Attack Event when TCP flag ACK is set and Acknowledge number is zero</td ></tr >< tr >< td > BCM_FIELD_DOSATTACK_TCPFLAGS_URG_NOURGPTR</td >< td > Dos Attack Event when TCP Flag URG set and Urgent pointer is zero</td ></tr >< tr >< td > BCM_FIELD_DOSATTACK_TCPFLAGS_NOURG_URGPTR</td >< td > Dos Attack Event when TCP Flag URG not set and Urgent pointer is not zero</td ></tr >< tr >< td > BCM_FIELD_DOSATTACK_TCPFLAGS_SYNOPTION</td >< td > Dos Attack Event when TCP Flag SYN set and Option same as configured value</td ></tr ></table > subsection fp_policers Policer result usage Policer use options for bcmFieldActionUsePolicerResult< table >< caption > Policer result usage</caption >< tr >< th > Name</th >< th > Purpose</th ></tr >< tr >< td > BCM_FIELD_USE_POLICER_RESULT_INGRESS</td >< td > Use policer result on ingress</td ></tr >< tr >< td > BCM_FIELD_USE_POLICER_RESULT_EGRESS</td >< td > Use policer result on egress</td ></tr ></table > subsection fp_actions Field Actions Many types of actions may be performed on a packet when it matches a filter entry The type bcm_field_action_t is an enumeration of the possible actions Associated with each action are two or three parameters that may be needed by the bcm_field_action_config_add takes three parameters and may take separate parameters per each core Also note that the same action may be interpreted a combination ILLEGAL may indicate one subaction while the combination param1
Definition: field.dox:7673
int bcm_field_qualify_TunnelAltEtherType(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
To qualify on alternate tunnel EtherType.
int bcm_field_qualify_FlowtrackerCollectorCopy_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
To get the qualified inputs on event whether initial or sample copied to collector happened by Flowtr...
int bcm_field_qualify_L2DstMulticastHit_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyL2DstMulticastHit.
int bcm_field_qualify_ExternalHit4_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyExternalHit4 qualifier in the field entry.
int bcm_field_qualify_L5PayloadByte2(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on L5 Payload byte 2.
int nof_entry_actions
Definition: field.h:39838
int bcm_field_qualify_InnerTcpControl_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyInnerTcpControl qualifier from the field entry.
bcm_field_context_hash_config_t hash_config
Definition: field.h:39506
int bcm_field_qualify_IntPktFinalHop_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get to match on INT (Inband-Telemetry) Max Hop Limit Check packet qualification from a field entry.
int bcm_field_qualify_TunnelPayloadEtherType(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Set match criteria for bcmFieldQualifyTunnelPayloadEtherType qualifier in the field entry.
Definition: field.h:9264
int bcm_field_range_multi_create(int unit, bcm_field_range_t *range_id, uint32 create_flags, int count, uint32 *range_flags, uint32 *min_value, uint32 *max_value)
Allocate a range checker according to multiple range types.
int bcm_field_qualify_RecircleHdrDropReason_get(int unit, bcm_field_entry_t entry, bcm_field_drop_reason_t *type)
API to retrieve redirect header drop reason associated to a field entry.
int bcm_field_qualify_SrcMimGports(int unit, bcm_field_entry_t entry, bcm_gport_t mim_port_id, bcm_gport_t mim_port_mask)
bcm_field_qualify_SrcMimGports
enum bcm_field_egress_port_ctrl_e bcm_field_egress_port_ctrl_t
enum bcm_field_context_compare_type_e bcm_field_context_compare_type_t
int bcm_field_qualify_PreselId_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Set match criteria for bcmFieldQualifyPreselId_get.
void bcm_field_presel_set_t_init(bcm_field_presel_set_t *presel_set)
Initialize the bcm_field_presel_set_t structure.
void bcm_field_group_config_extension_t_init(bcm_field_group_config_extension_t *group_config)
Initialize Field Group Config Extension structure.
int bcm_field_presel_group_config_get(int unit, bcm_field_presel_group_config_t *group_config)
Retrieve a field presel group config attributes for a given presel group Id mentioned in the input st...
int bcm_field_qualify_SrcIpClassUpper_get(int unit, bcm_field_entry_t entry, bcm_class_t *data, bcm_class_t *mask)
Get match criteria for bcmFieldQualifySrcIpClassUpper qualifier from the field entry.
int bcm_field_sat_macsa_delete_all(int unit)
Delete all Source MAC Address entries of SAT packets.
bcm_stat_object_t stat_object
Definition: field.h:206
int bcm_field_qualify_IfaNextHdr(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Add match criteria for bcmFieldQualifyIfaNextHdr.
int bcm_field_qualify_MplsCtrlPktType(int unit, bcm_field_entry_t entry, bcm_field_mpls_ctrl_pkt_type_t type)
API to add MPLS control packet type to a field entry for qualification.
int bcm_field_class_map_set(int unit, bcm_field_stage_t stage, bcm_field_qualify_t qual, uint32 num_entries, uint32 *orig_values_array, uint32 *map_values_array)
To map a given set of TTL/ToS/TCP values of the packet to another set of TTL/ToS/TCP values respectiv...
int bcm_field_qualify_DstVxlanGports_get(int unit, bcm_field_entry_t entry, bcm_gport_t *vxlan_port_id, bcm_gport_t *vxlan_port_mask)
Get match criteria for bcmFieldQualifyDstVxlanGports qualifier from the field entry.
int bcm_field_qualify_Loopback_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get loopback field qualification from a field entry.
enum bcm_field_IEEE1588Encap_e bcm_field_IEEE1588Encap_t
enum bcm_field_header_format_e bcm_field_header_format_t
int bcm_field_compression_direct_mapped_set(int unit, bcm_field_compression_map_type_t type, bcm_pbmp_t ports, uint16 entry_cnt, uint16 *val_arr, uint16 *map_val_arr)
To set the remapped compression values for a particular value.
int field_presel_advanced_mode
Definition: field.h:4854
int bcm_field_qualify_DstL3EgressNextHops(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for bcmFieldQualifyDstL3EgressNextHops qualifier in the field entry.
int bcm_field_qualify_LoopbackHdrFlags(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
To qualify on loopback packet header flag bits.
int bcm_field_qualify_Vrf_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyVrf qualifier from the field entry.
int bcm_field_entry_prio_get(int unit, bcm_field_entry_t entry, int *prio)
Get/Set the priority for an entry within a group.
int bcm_field_qualify_DstL3EgressNextHopsUnderlay(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Qualifies on range of Underlay destination egress next hops.
int bcm_field_qualify_SrcClassField(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
bcm_field_qualify_SrcClassField
int bcm_field_qualify_L4SrcPort(int unit, bcm_field_entry_t entry, bcm_l4_port_t data, bcm_l4_port_t mask)
bcm_field_qualify_L4SrcPort
int bcm_field_qualify_MplsLabel2Bos(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for MplsLabel2Bos qualifier.
int bcm_field_qualify_IfaVersion_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyIfaVersion from a field entry.
int bcm_field_qualify_InnerVlanActionRange(int unit, bcm_field_entry_t entry, bcm_vlan_t data, bcm_vlan_t mask)
Set match criteria for InnerVlanActionRange qualifier.
int bcm_field_qualify_IfaActionVector_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
To get qualified inputs on IFA action vector.
int bcm_field_qualify_TrillEgressRbridge_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for TrillEgressRbridge qualifier.
int bcm_field_qualify_TunnelPayloadIp4Length(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Configure match criteria for bcmFieldQualifyTunnelPayloadIp4Length qualifier for the field entry.
int bcm_field_qualify_GbpSrcId_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
To get the qualified inputs on GBP source ID.
int bcm_field_qualify_RecircleHdrFirstDropReason_get(int unit, bcm_field_entry_t entry, bcm_field_drop_reason_t *type)
API to retrieve redirect header first drop reason associated to a field entry.
int bcm_field_entry_policer_get(int unit, bcm_field_entry_t entry_id, int level, bcm_policer_t *policer_id)
Get the policer(s) attached to a field entry.
int bcm_field_qualify_TunnelAltSrcIp6(int unit, bcm_field_entry_t entry, bcm_ip6_t data, bcm_ip6_t mask)
To qualify on alternate tunnel source Ipv6.
int bcm_field_qualify_MplsOamClassMplsSwitchLabel(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Set match criteria for bcmFieldQualifyMplsOamClassMplsSwitchLabel.
int bcm_field_qualify_CapwapPayloadDip6(int unit, bcm_field_entry_t entry, bcm_ip6_t data, bcm_ip6_t mask)
bcm_field_qualify_CapwapPayloadDip6
struct bcm_field_tcam_bank_info_s bcm_field_tcam_bank_info_t
int bcm_field_qualify_CosQueueId_get(int unit, bcm_field_entry_t entry, bcm_gport_t *queue_gport)
Get qualified inputs on Cos Queue.
int bcm_field_qualify_NatNeeded_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyNatNeeded qualifier in the field entry.
int bcm_field_qualify_DstL3Egress(int unit, bcm_field_entry_t entry, bcm_if_t if_id)
bcm_field_qualify_DstL3Egress
int bcm_field_qualify_IfaLocalNameSpace_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
To get qualified inputs on IFA Local Name Space.
Definition: field.h:39044
int bcm_field_qualify_TranslatedInnerVlanPri_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyTranslatedInnerVlanPri qualifier from the field entry.
int bcm_field_qualify_ECid_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyECid qualifier from the field entry.
int bcm_field_qualify_L2Format(int unit, bcm_field_entry_t entry, bcm_field_L2Format_t type)
bcm_field_qualify_L2Format
int bcm_field_qualify_Dhcp_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for Dhcp qualifier.
int bcm_field_qualify_MplsLabel6Exp(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on MPLS label6 exp value.
int bcm_field_qualify_L5PayloadByte2_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyL5PayloadByte2 qualifier from the field entry.
int bcm_field_qualify_DstPortSRNetId(int unit, bcm_field_entry_t entry, uint8 net_id, uint8 mask)
Set match criteria for bcmFieldQualifyDstPortSRNetId.
int bcm_field_qualify_SrcPortSRType_get(int unit, bcm_field_entry_t entry, bcm_field_port_sr_type_t *type)
Get match criteria for bcmFieldQualifySrcPortSRType.
uint8 name[BCM_FIELD_MAX_SHORT_NAME_LEN]
Definition: field.h:37945
int bcm_field_qualify_IncomingVlanFormat_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyIncomingVlanFormat qualifier from the field entry.
int bcm_field_qualify_Rtag7CHashUpper(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Set match criteria for Rtag7CHashUpper qualifier.
struct bcm_field_redirect_config_s bcm_field_redirect_config_t
int bcm_field_qualify_SubportTagPresent(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
API to add Subport Tag present status to a given field entry for qualification.
int bcm_field_qualify_Ip6NextHeader(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_Ip6NextHeader
struct bcm_field_entry_action_s bcm_field_entry_action_t
int bcm_field_qualify_InterfaceInPorts(int unit, bcm_field_entry_t entry, bcm_pbmp_t data, bcm_pbmp_t mask)
bcm_field_qualify_InterfaceInPorts
int bcm_field_qualify_IfaHopLimit(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
To qualify on IFA hop limit.
int bcm_field_action_config_get(int unit, bcm_field_entry_t entry, bcm_field_action_t action, int core_config_arr_len, bcm_field_action_core_config_t *core_config_arr)
Get action core specific parameters from a specified entry.
int bcm_field_qualify_MplsForwardingLabel_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for MplsForwardingLabel qualifier.
bcm_field_fem_extraction_output_source_type_t source_type
Definition: field.h:40024
int bcm_field_qualify_MplsLabel3(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for MplsLabel3 qualifier.
int bcm_field_qualify_SrcPortSRMode(int unit, bcm_field_entry_t entry, bcm_field_sr_port_mode_t type, uint8 mask)
Set match criteria for bcmFieldQualifySrcPortSRMode.
int bcm_field_qualify_MplsLabel7Exp_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyMplsLabel7Exp qualifier from the field entry.
int bcm_field_qualify_L5PayloadByte4(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on L5 Payload byte 4.
int bcm_field_qualify_Ptch(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for Ptch qualifier.
int bcm_field_qualify_DstMplsGport(int unit, bcm_field_entry_t entry, bcm_gport_t mpls_port_id)
bcm_field_qualify_DstMplsGport
bcm_field_qualify_t type
Definition: field.h:50107
int bcm_field_qualify_MplsLabel3Ttl_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for MplsLabel3Ttl qualifier.
int bcm_field_qualify_RecircleHdrCode_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyRecircleHdrCode qualifier from the field entry.
int bcm_field_qualify_ExactMatchGroupClassId(int unit, bcm_field_entry_t entry, int group_pri, bcm_field_group_t group)
Qualify on Exact Match Group Class Id.
int bcm_field_qualify_OamEgressEtherType_get(int unit, bcm_field_entry_t entry, uint16 *data)
Get match criteria for bcmFieldQualifyOamEgressEtherType qualifier from the field entry.
int bcm_field_qualify_FibreChanCSCtl_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyFibreChanCSCtl qualifier from the field entry.
bcm_field_sr_node_type_e
Definition: field.h:34294
bcm_field_action_priority_t * invalidate_fems
Definition: field.h:38853
int bcm_field_qualify_TunnelAltSrcIp(int unit, bcm_field_entry_t entry, bcm_ip_t data, bcm_ip_t mask)
To qualify on alternate tunnel source Ipv4.
int bcm_field_qualify_SRFlowId(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for bcmFieldQualifySRFlowId.
int bcm_field_group_priority_set(int unit, bcm_field_group_t group, int priority)
Assign relative priority to a group.
int bcm_field_qualify_InnerDstIp6(int unit, bcm_field_entry_t entry, bcm_ip6_t data, bcm_ip6_t mask)
bcm_field_qualify_InnerDstIp6
int bcm_field_qualify_TcpClassOne_get(int unit, bcm_field_entry_t entry, bcm_class_t *data, bcm_class_t *mask)
Get match criteria for bcmFieldQualifyTcpClassOne qualifier from the field entry.
bcm_field_group_t group_id
Definition: field.h:9268
struct bcm_field_group_config_s bcm_field_group_config_t
int bcm_field_qualify_TunnelHeaderSrcMac_get(int unit, bcm_field_entry_t entry, bcm_mac_t *data, bcm_mac_t *mask)
Get match criteria for bcmFieldQualifyTunnelHeaderSrcMac qualifier from the field entry.
int bcm_field_qualify_MplsControlWord(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for MplsControlWord qualifier.
int bcm_field_qualify_OverlayEgressClass_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get match criteria for OverlayEgressClass ID qualifier.
void bcm_field_ace_entry_info_t_init(bcm_field_ace_entry_info_t *entry_info)
Initialize the bcm_field_ace_entry_info_t structure.
endcode< table >< tr >< th > API</th >< th > Brief</th ></tr >< tr >< td > uint32 bcm_stat_counter_group_filter_t group
Definition: stat.dox:3417
int bcm_field_group_enable_set(int unit, bcm_field_group_t group, int enable)
Get or set the group enable state.
int bcm_field_entry_reinstall(int unit, bcm_field_entry_t entry)
Re-install a field entry into the hardware tables.
int bcm_field_qualify_IntPktOverflowed_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get to match on INT (Inband-Telemetry) header Overflow Bit packet qualification from a field entry.
int bcm_field_qualify_OutVPort_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyOutVPort qualifier from the field entry (8-bits).
bcm_field_stage_t stage
Definition: field.h:37340
int bcm_field_qualify_IngressL2InterfaceFlexDigestCtrlIdB(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on flex digest control id B from L2_IIF table.
int bcm_field_qualify_TunnelPayloadSip6(int unit, bcm_field_entry_t entry, bcm_ip6_t data, bcm_ip6_t mask)
Set match criteria for bcmFieldQualifyTunnelPayloadSip6 qualifier in the field entry.
int bcm_field_qualify_ForwardHdrSrcMac_get(int unit, bcm_field_entry_t entry, bcm_mac_t *data, bcm_mac_t *mask)
Get match criteria for bcmFieldQualifyForwardHdrSrcMac qualifier from the field entry.
int bcm_field_qualify_Stage_get(int unit, bcm_field_entry_t entry, bcm_field_stage_t *data)
Get stage qualifier information.
bcm_field_ip_option_hdr_type_e
Definition: field.h:36402
int bcm_field_qualify_CapwapPayloadOuterVlanId(int unit, bcm_field_entry_t entry, bcm_vlan_t data, bcm_vlan_t mask)
Set match criteria for bcmFieldQualifyCapwapPayloadOuterVlanId qualifier in the field entry.
int bcm_field_qualify_BfdVerFlags(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for BFD Version Flags in the field entry.
enum bcm_field_sr_node_type_e bcm_field_sr_node_type_t
int bcm_field_qualify_IntPriority_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyIntPriority qualifier from the field entry.
int bcm_field_qualify_IcmpError_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyIcmpError qualifier in the field entry.
int bcm_field_qualify_FheiSize(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for FheiSize qualifier.
int bcm_field_qualify_HiGigLabelType(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyHiGigLabelType qualifier in the field entry.
struct bcm_field_action_info_s bcm_field_action_info_t
int bcm_field_qualify_IntPktVersionOne(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Add to match on INT (Inband-Telemetry) header version packet qualification to a field entry.
int bcm_field_qualify_DevicePortOpaqueCommand_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyDevicePortOpaqueCommand qualifier from the field entry.
int bcm_field_qualify_TtlClassZero_get(int unit, bcm_field_entry_t entry, bcm_class_t *data, bcm_class_t *mask)
Get match criteria for bcmFieldQualifyTtlClassZero qualifier from the field entry.
int bcm_field_qualify_HiGigMulticastIndex_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get match criteria for bcmFieldQualifyHiGigMulticastIndex qualifier from the field entry.
int bcm_field_sat_macsa_add(int unit, bcm_mac_t mac, uint32 class_id)
Assign a class_id for given Source MAC Address of SAT packet.
int bcm_field_qualify_HiGigVlan_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get match criteria for bcmFieldQualifyHiGigVlan qualifier from the field entry.
int bcm_field_qualify_DstCompressionClassId_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyDstCompressionClassId qualifier from the field entry.
int bcm_field_qualify_GpeReserved0(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Set match criteria for GPE Reserved0 in the field entry.
int bcm_field_qualify_InnerIp6FlowLabel(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
bcm_field_qualify_InnerIp6FlowLabel
int bcm_field_qualify_L2LearnCommands_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get value for bcmFieldQualifyL2LearnCommands qualifier from the field entry.
int bcm_field_qualify_HiGigLabelType_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyHiGigLabelType qualifier from the field entry.
int bcm_field_qualify_FibreChanDstIdClassMsbNibble_get(int unit, bcm_field_entry_t entry, bcm_class_t *data, bcm_class_t *mask)
Get match criteria for bcmFieldQualifyFibreChanDstIdClassMsbNibble qualifier from the field entry.
int bcm_field_qualify_OuterVlanTagPreserve_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyOuterVlanTagPreserve qualifier from the field entry.
bcm_field_macsec_flow_e
Definition: field.h:8338
int bcm_field_qualify_MplsLabel4Exp_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyMplsLabel4Exp qualifier from the field entry.
enum bcm_field_mpls_ctrl_pkt_type_e bcm_field_mpls_ctrl_pkt_type_t
int bcm_field_entry_stat_extended_get(int unit, bcm_field_entry_t entry, int *stat_id, bcm_field_stat_action_t *stat_action)
Get statistics entity with stat action attached to Field Processor entry.
int bcm_field_qualify_IfaRequestVector_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
To get qualified inputs on IFA metadata header request vector.
int bcm_field_qualify_MplsForwardingControlWord(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for Mpls forwarding ControlWord qualifier.
int bcm_field_entry_flexctr_attach(int unit, bcm_field_entry_t entry, bcm_field_flexctr_config_t *flexctr_cfg)
Attach the flexctr action and its associated counter index to the field entry. The counter index in t...
int bcm_field_qualify_DstIpClassMsbNibble_get(int unit, bcm_field_entry_t entry, bcm_class_t *data, bcm_class_t *mask)
Get match criteria for bcmFieldQualifyDstIpClassMsbNibble qualifier from the field entry.
int bcm_field_qualify_L3DstMiscClassId(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Add match criteria for bcmFieldQualifyL2DstMiscClassId.
int bcm_field_group_action_get(int unit, bcm_field_group_t group, bcm_field_aset_t *aset)
Change or retrieve the actions for a field group.
int bcm_field_qualify_L2EgrIntfEfpCtrlId_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for L2 Egr Interface control id qualifier from the field entry.
int bcm_field_qualify_HiGigDstModuleGport_get(int unit, bcm_field_entry_t entry, bcm_gport_t *port_id, bcm_gport_t *port_mask)
Get match criteria for bcmFieldQualifyHiGigDstModuleGport qualifier from the field entry.
int bcm_field_qualify_TunnelHeaderDip6(int unit, bcm_field_entry_t entry, bcm_ip6_t data, bcm_ip6_t mask)
Set match criteria for bcmFieldQualifyTunnelHeaderDip6 qualifier in the field entry.
int bcm_field_qualify_MplsControlPkt_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Retrieve the match criteria fields for MplsControlPkt qualifier associated to a given field entry.
int bcm_field_action_delete(int unit, bcm_field_entry_t entry, bcm_field_action_t action, uint32 param0, uint32 param1)
Delete an action from a field entry.
int bcm_field_qualify_MimlVlanPri_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyMimlVlanPri qualifier from the field entry.
int bcm_field_qualify_ForwardCode_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyForwardCode qualifier in the field entry.
int bcm_field_qualify_L5PayloadByte3(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on L5 Payload byte 3.
endcode section generic_apis Generic APIs< table >< tr >< th > API</th >< th > Brief</th ></tr >< tr >< td > int enable</td >< td > Enable disable L3 function without clearing any L3 tables</td ></tr >< tr >< td > bcm_l3_intf_t *intf</td >< td > Create a new L3 interface</td ></tr >< tr >< td > bcm_l3_intf_t *intf</td >< td > Search for L3 interface by MAC address and VLAN</td ></tr >< tr >< td > bcm_l3_intf_t *intf</td >< td > Given the L3 interface return the interface information</td ></tr >< tr >< td > bcm_if_t intf_id</td >< td > Detach counter entries to the given L3 egress interface</td ></tr >< tr >< td > bcm_l3_ingress_t bcm_if_t *intf_id</td >< td > Create L3 Ingress Interface object</td ></tr >< tr >< td > bcm_if_t bcm_l3_ingress_t *ing_intf</td >< td > Get an Ingress Interface object</td ></tr >< tr >< td > bcm_l3_ingress_traverse_cb void *user_data</td >< td > Goes through ingress interface objects table and runs the user callback function at each valid ingress object entry passing back the information for that object</td ></tr >< tr >< td > bcm_if_t intf_id</td >< td > Detach counters entries to the given L3 ingress interface</td ></tr >< tr >< td > bcm_if_t intf_id
Definition: l3.dox:2274
int bcm_field_qualify_DstIpLocal(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for DspIpLocal qualifier.
bcm_class_t class_id
Definition: field.h:8561
endcode section generic_apis Generic APIs< table >< tr >< th > API</th >< th > Brief</th ></tr >< tr >< td > int enable</td >< td > Enable disable L3 function without clearing any L3 tables</td ></tr >< tr >< td > bcm_l3_intf_t *intf</td >< td > Create a new L3 interface</td ></tr >< tr >< td > bcm_l3_intf_t *intf</td >< td > Search for L3 interface by MAC address and VLAN</td ></tr >< tr >< td > bcm_l3_intf_t *intf</td >< td > Given the L3 interface return the interface information</td ></tr >< tr >< td > bcm_if_t intf_id</td >< td > Detach counter entries to the given L3 egress interface</td ></tr >< tr >< td > bcm_l3_ingress_t bcm_if_t *intf_id</td >< td > Create L3 Ingress Interface object</td ></tr >< tr >< td > bcm_if_t bcm_l3_ingress_t *ing_intf</td >< td > Get an Ingress Interface object</td ></tr >< tr >< td > bcm_l3_ingress_traverse_cb void *user_data</td >< td > Goes through ingress interface objects table and runs the user callback function at each valid ingress object entry passing back the information for that object</td ></tr >< tr >< td > bcm_if_t intf_id</td >< td > Detach counters entries to the given L3 ingress interface</td ></tr >< tr >< td > bcm_if_t bcm_l3_stat_t uint32 uint32 * counter_indexes
Definition: l3.dox:2274
int bcm_field_qualify_RecoverableDrop(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for RecoverableDrop qualifier.
int bcm_field_qualify_HiGigPortFilteringMode_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyHiGigPortFilteringMode qualifier from the field entry.
int bcm_field_qualify_StaggeredValue0(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for bcmFieldQualifyStaggeredValue0.
int bcm_field_qualify_InnerDSCP(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_InnerDSCP
int bcm_field_qualify_InPorts_get(int unit, bcm_field_entry_t entry, bcm_pbmp_t *data, bcm_pbmp_t *mask)
Get InPorts qualification match criteria from a field entry.
int bcm_field_context_info_get(int unit, bcm_field_stage_t stage, bcm_field_context_t context_id, bcm_field_context_info_t *context_info)
Get all context info of a Field Context.
struct bcm_field_destination_match_s bcm_field_destination_match_t
int bcm_field_qualify_TranslatedOuterVlan_get(int unit, bcm_field_entry_t entry, bcm_vlan_t *data, bcm_vlan_t *mask)
Get match criteria for bcmFieldQualifyTranslatedOuterVlan qualifier from the field entry.
int bcm_field_qualify_EgressTunnelIpHeaderFlowLabel_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for EgressTunnelIpHeaderFlowLabel qualifier.
bcm_field_admit_profile_e
Definition: field.h:8417
int bcm_field_qualify_DstTrunk(int unit, bcm_field_entry_t entry, bcm_trunk_t data, bcm_trunk_t mask)
bcm_field_qualify_DstTrunk
int bcm_field_qualify_HiGigProxyTunnelType(int unit, bcm_field_entry_t entry, bcm_field_higig_proxy_tunnel_type_t type)
API to add HiGig Proxy tunnel type to a field entry for qualification.
struct bcm_field_entry_qual_s bcm_field_entry_qual_t
int bcm_field_qualify_DstGports(int unit, bcm_field_entry_t entry, bcm_gport_t port_id, bcm_gport_t port_mask)
bcm_field_qualify_DstGports
int bcm_field_qualify_IngressDropEthernetOamData_get(int unit, bcm_field_entry_t entry, bcm_field_oam_drop_mep_type_t *mep_type)
Get match criteria for bcmFieldQualifyIngressDropEthernetOamData qualifier from the field entry.
int bcm_field_qualify_MacSecDstMacRangeHit(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify the hit on Destination MAC addresses range.
int bcm_field_qualify_NshServiceIndex_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Retrieve the match criteria fields for NshServiceIndex qualifier associated to a given field entry.
int bcm_field_qualify_MplsControlWordValid_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for MplsControlWordValid qualifier.
int bcm_field_qualify_CapwapPayloadInnerVlanId_get(int unit, bcm_field_entry_t entry, bcm_vlan_t *data, bcm_vlan_t *mask)
Get match criteria for bcmFieldQualifyCapwapPayloadInnerVlanId qualifier from the field entry.
int bcm_field_qualify_MplsLabel1Exp(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for MplsLabel1Exp qualifier.
int bcm_field_qualify_OuterL5PayloadByte7_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyOuterL5PayloadByte7 qualifier from the field entry.
int bcm_field_qualify_HiGigProtectionSwitchingStatus_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyHiGigProtectionSwitchingStatus qualifier from the field entry.
int bcm_field_qualify_LoopBackQueue(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyLoopBackQueue qualifier in the field entry.
int bcm_field_qualify_CompressionSrcHit(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for CompressionSrcHit qualifier.
int bcm_field_qualify_OamHeaderBits32_63_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for OamHeaderBits32_63 qualifier.
int bcm_field_qualify_EthernetOamInterfaceClassVlan_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyEthernetOamInterfaceClassVlan.
int bcm_field_qualify_OamEgressMulticastMacHit_get(int unit, bcm_field_entry_t entry, uint8 *data)
Get match criteria for bcmFieldQualifyOamEgressMulticastMacHit qualifier from the field entry.
int bcm_field_qualify_InterfaceClassL2Type(int unit, bcm_field_entry_t entry, bcm_field_interface_class_l2_type_t type)
Add Interface Class L2 type field qualification to a field entry.
uint32 end_bit
Definition: field.h:27185
int bcm_field_qualify_Drop_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyDrop qualifier from the field entry.
int bcm_field_qualify_HiGigOffloadEngineDeferredFlags_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyHiGigOffloadEngineDeferredFlags qualifier from the field entry.
int bcm_field_qualify_MplsOuterLabelPop_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyMplsOuterLabelPop qualifier in the field entry.
int bcm_field_qualify_L3SrcHit_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyL3SrcHit qualifier from the field entry.
int bcm_field_qualify_DestVirtualPortValid(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Configure match criteria for bcmFieldQualifyDestVirtualPortValid qualifier from the field entry.
bcm_field_flush_entry_action_t entry_action[BCM_FIELD_NUMBER_OF_ACTIONS_PER_GROUP]
Definition: field.h:50161
int bcm_field_qualify_EthernetOamInterfaceClassMpls_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyEthernetOamInterfaceClassMpls.
int bcm_field_qualify_SrcMplsGport_get(int unit, bcm_field_entry_t entry, bcm_gport_t *mpls_port_id)
Get match criteria for bcmFieldQualifySrcMplsGport qualifier from the field entry.
int bcm_field_qualify_SrcIp6ClassLower(int unit, bcm_field_entry_t entry, bcm_class_t data, bcm_class_t mask)
Configure match criteria for bcmFieldQualifySrcIp6ClassLower qualifier from the field entry.
int bcm_field_qualify_PacketStatus_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get value for bcmFieldQualifyPacketStatus qualifier from the field entry.
bcm_field_group_oper_mode_e
Definition: field.h:27839
int bcm_field_qualify_VlanTranslateClassId_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
To get the qualified inputs on Class identifier assigned by Vlan Translate tables.
int bcm_field_qualify_MplsLabel2Id(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for MplsLabel2Id qualifier.
int bcm_field_qualify_OuterVlanPri(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyOuterVlanPri qualifier in the field entry.
bcm_field_TunnelTerminationProcessingProfile_e
Definition: field.h:5248
int bcm_field_qualify_RecoverableDrop_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for RecoverableDrop qualifier.
int bcm_field_qualify_EgressForwardingClassId_get(int unit, bcm_field_entry_t entry, int *data, int *mask)
To get the qualified inputs on Class identifier assigned by Egress adaptation forwarding tables.
int bcm_field_qualify_IpFlags_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyIpFlags qualifier from the field entry.
int bcm_field_qualify_HeaderFormatExtension_get(int unit, bcm_field_entry_t entry, bcm_field_header_format_extension_t *header_format_extension)
Get header format extension that is currently set for the indicated entry.
int bcm_field_qualify_DstSysPortExt_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get match criteria for DSP Extension qualifier.
int bcm_field_qualify_IpChecksumOkPkt_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get to match on IP packet with checksum OK qualification from a field entry.
int bcm_field_qualify_OamEgressPortUnicastDstMacHit_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyOamEgressPortUnicastDstMacHit qualifier from the field entry.
enum bcm_field_MplsOam_Control_pktType_e bcm_field_MplsOam_Control_pktType_t
int bcm_field_qualify_IntCongestionNotification(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for IntCongestionNotification qualifier.
int bcm_field_qualify_L2Learn(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for L2Learn qualifier.
int bcm_field_qualify_IngressInterfaceClass(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
To qualify on class id provided by L2_IIF/SVP/L3_IIF ingress tables.
int bcm_field_qualify_DstClassL2(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
bcm_field_qualify_DstClassL2
Definition: field.h:39837
bcm_field_cos_map_select_e
Definition: field.h:8407
int bcm_field_qualify_PacketTerminatedBytes_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for PacketTerminatedBytes qualifier.
int bcm_field_qualify_MplsLabel5Id_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get value for bcmFieldQualifyMplsLabel5Id qualifier from the field entry.
int bcm_field_qualify_ExternalHit6_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyExternalHit6 qualifier in the field entry.
int bcm_field_qualify_ForwardingPacketRes(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
To match on Forwarding packet resolution.
int bcm_field_qualify_InnerL4Ports(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Configure match criteria for bcmFieldQualifyInnerL4Ports qualifier from the field entry.
int bcm_field_qualify_ForwardingType_get(int unit, bcm_field_entry_t entry, bcm_field_ForwardingType_t *type)
Get match criteria for bcmFieldQualifyForwardingType qualifier from the field entry.
int bcm_field_qualify_InnerL4DstPort(int unit, bcm_field_entry_t entry, bcm_l4_port_t data, bcm_l4_port_t mask)
bcm_field_qualify_InnerL4DstPort
int bcm_field_qualify_StaggeredPreselProfile1_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Set match criteria for bcmFieldQualifyStaggeredPreselProfile1_get.
int bcm_field_qualify_RangeCheckGroup(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Configure match criteria for bcmFieldQualifyRangeCheckGroup qualifier from the field entry.
int bcm_field_qualify_DstVlanGports(int unit, bcm_field_entry_t entry, bcm_gport_t vlan_port_id, bcm_gport_t vlan_port_mask)
bcm_field_qualify_DstVlanGports
int bcm_field_qualify_Snap_get(int unit, bcm_field_entry_t entry, bcm_field_snap_header_t *data, bcm_field_snap_header_t *mask)
Get match criteria for bcmFieldQualifySnap qualifier from the field entry.
int bcm_field_qualify_InnerVlan_get(int unit, bcm_field_entry_t entry, bcm_vlan_t *data, bcm_vlan_t *mask)
Get match criteria for bcmFieldQualifyInnerVlan qualifier from the field entry.
int bcm_field_qualify_MplsLabel1Bos(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for MplsLabel1Bos qualifier.
int bcm_field_qualify_FlowId(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
bcm_field_qualify_FlowId
int bcm_field_qualify_HiGigVpReplicationId_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyHiGigVpReplicationId qualifier from the field entry.
uint32 flags
Definition: field.h:9265
uint8 bcm_field_fem_id_t
Definition: field.h:39991
int bcm_field_qualify_TosLower4Bits_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyTosLower4Bits qualifier from the field entry.
int bcm_field_qualify_Rtag7BHashUpper_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get match criteria for Rtag7BHashUpper qualifier.
int bcm_field_qualify_FlowtrackerCheck_get(int unit, bcm_field_entry_t entry, bcm_flowtracker_group_t flow_group_id, uint32 num_checks, bcm_field_flowtrackercheck_t *list_of_check_ids, uint32 *actual_num_checks)
To get the qualified inputs the results of Flowtracker checker events in Flow Tracker Module.
int bcm_field_qualify_IntUdpChecksumEqualsZero_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for IntUdpChecksumEqualsZero qualifier.
int bcm_field_qualify_GpeNetworkId_get(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Get match criteria for GPE Network ID.
int bcm_field_qualify_L2SrcMulticastHit(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyL2SrcMulticastHit.
bcm_field_DstType_e
Definition: field.h:5227
int bcm_field_qualify_InnerSrcIp(int unit, bcm_field_entry_t entry, bcm_ip_t data, bcm_ip_t mask)
bcm_field_qualify_InnerSrcIp
void bcm_field_flush_profile_info_t_init(bcm_field_flush_profile_info_t *flush_profile_info)
Initialize the field flush profile structure.
enum bcm_field_decap_e bcm_field_decap_t
int bcm_field_qualify_LoopBackSrcGport_get(int unit, bcm_field_entry_t entry, bcm_gport_t *port_id, bcm_gport_t *port_mask)
Get match criteria for bcmFieldQualifyLoopBackSrcGport qualifier from the field entry.
int bcm_field_qualify_InnerVlanCfi(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyInnerVlanCfi qualifier in the field entry.
int bcm_field_qualify_NatNeeded(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyNatNeeded qualifier in the field entry.
int bcm_field_qualify_DstIp6ClassUpper(int unit, bcm_field_entry_t entry, bcm_class_t data, bcm_class_t mask)
Configure match criteria for bcmFieldQualifyDstIp6ClassUpper qualifier from the field entry.
int bcm_field_qualify_HiGigOffloadEnginePreserveDot1p(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyHiGigOffloadEnginePreserveDot1p qualifier in the field entry.
int bcm_field_qualify_L2DestValue_get(int unit, bcm_field_entry_t entry, uint64 *data, uint64 *mask)
Get match criteria for L2DestValue qualifier.
int bcm_field_qualify_SourceGportBitmap_get(int unit, bcm_field_entry_t entry, bcm_pbmp_t *data, bcm_pbmp_t *mask)
Get match criteria for SourceGportBitmap qualifier from the field. entry.
enum bcm_field_ArpOpcode_e bcm_field_ArpOpcode_t
int bcm_field_qualify_FibreChanVFTHopCount(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyFibreChanVFTHopCount qualifier in the field entry.
enum bcm_field_group_mode_e bcm_field_group_mode_t
int bcm_field_qualify_TunnelPayloadOuterVlanId(int unit, bcm_field_entry_t entry, bcm_vlan_t data, bcm_vlan_t mask)
Set match criteria for bcmFieldQualifyTunnelPayloadOuterVlanId qualifier in the field entry.
int bcm_field_qualify_EgressPortQueue_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get qualified inputs on Egress Port Cos Queue value.
int bcm_field_qualify_FcoeRxIDClass(int unit, bcm_field_entry_t entry, bcm_class_t data, bcm_class_t mask)
Configure match criteria for bcmFieldQualifyFcoeRxIDClass qualifier from the field entry.
struct bcm_field_group_config_extension_s bcm_field_group_config_extension_t
int bcm_field_qualify_HiGigPreserveFlags(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyHiGigPreserveFlags qualifier in the field entry.
int bcm_field_qualify_GenevePktVersionZero(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Add to match on Geneve version 0 packet qualification to a field entry.
int bcm_field_qualify_CustomHeaderPkt(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Configure match criteria for bcmFieldQualifyCustomHeaderPkt qualifier from the field entry.
int bcm_field_flush_entry_delete(int unit, uint32 flags, bcm_field_group_t fg_id, int entry_id)
Clears a single flush machine entry (rule and action) for a specific field group.
int bcm_field_qualify_FibreChanDstIdClassLower(int unit, bcm_field_entry_t entry, bcm_class_t data, bcm_class_t mask)
Configure match criteria for bcmFieldQualifyFibreChanDstIdClassLower qualifier from the field entry.
int bcm_field_qualify_CapwapPayloadInnerVlanPri_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyCapwapPayloadInnerVlanPri qualifier from the field entry.
Definition: field.h:39030
enum bcm_field_AppType_e bcm_field_AppType_t
int bcm_field_qualify_InnerL4Info_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get value for bcmFieldQualifyInnerL4Info qualifier from the field entry.
int bcm_field_qualify_ExternalValue0_get(int unit, bcm_field_entry_t entry, uint64 *data, uint64 *mask)
Get match criteria for bcmFieldQualifyExternalValue0 qualifier in the field entry.
int bcm_field_qualify_MimVlanPri_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for MimVlanPri qualifier.
bcm_field_qualify_e
Definition: field.h:1422
int bcm_field_qualify_EgressL3TunnelGport_get(int unit, bcm_field_entry_t entry, bcm_gport_t *tunnel_port_id)
Get match criteria for EgressL3TunnelGport qualifier from the field entry.
int bcm_field_qualify_Rtag7BHashUpper(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Set match criteria for Rtag7BHashUpper qualifier.
int bcm_field_qualify_MplsForwardingLabelPayload_get(int unit, bcm_field_entry_t entry, uint64 *data, uint64 *mask)
Get match criteria for MplsForwardingLabelPayload qualifier.
int bcm_field_qualify_MimVfiHit(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for MimVfiHit qualifier.
int bcm_field_qualify_SrcPortSRMode_get(int unit, bcm_field_entry_t entry, bcm_field_sr_port_mode_t *type, uint8 *mask)
Get match criteria for bcmFieldQualifySrcPortSRMode.
int bcm_field_qualify_SrcModPortGports(int unit, bcm_field_entry_t entry, bcm_gport_t port_id, bcm_gport_t port_mask)
bcm_field_qualify_SrcModPortGports
int bcm_field_qualify_Stg_get(int unit, bcm_field_entry_t entry, bcm_stg_t *data, bcm_stg_t *mask)
Get value for bcmFieldQualifyStg qualifier from the field entry.
bcm_udf_id_t udf_id
Definition: field.h:27191
int bcm_field_qualify_ForwardingHeaderOffset_get(int unit, bcm_field_entry_t entry, bcm_field_data_offset_base_t *base_header, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyForwardingHeaderOffset qualifier from the field entry.
int nof_entry_actions
Definition: field.h:50173
int bcm_field_group_ports_remove(int unit, bcm_field_group_t group, bcm_pbmp_t pbmp)
Remove ports from the specified group.
int bcm_field_qualify_VlanSRLanId(int unit, bcm_field_entry_t entry, uint8 lan_id)
Set match criteria for bcmFieldQualifyVlanSRLanId.
int bcm_field_qualify_TafEnable(int unit, bcm_field_entry_t entry, uint8 enable)
Set match criteria for bcmFieldQualifyTafEnable qualifier in the field entry.
int bcm_field_qualify_InnerTpid_get(int unit, bcm_field_entry_t entry, uint16 *tpid)
Get match criteria for bcmFieldQualifyInnerTpid qualifier from the field entry.
int bcm_field_qualify_EcnValue_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for EcnValue qualifier.
int bcm_field_qualify_FibreChanZoneCheck(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyFibreChanZoneCheck qualifier in the field entry.
int bcm_field_destination_flexctr_object_get(int unit, bcm_field_destination_match_t *match, uint32 *value)
Get the flex counter object value of a field destination entry.
bcm_field_mpls_ctrl_pkt_type_e
Definition: field.h:50893
int bcm_field_qualify_MplsForwardingLabel(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for MplsForwardingLabel qualifier.
bcm_field_hintid_t hintid
Definition: field.h:46657
void bcm_field_context_compare_info_t_init(bcm_field_context_compare_info_t *compare_info)
Initialize the bcm_field_context_compare_info_t structure.
int bcm_field_qualify_TrillIVersion_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for TrillIVersion qualifier.
int bcm_field_qualify_DstNivGport(int unit, bcm_field_entry_t entry, bcm_gport_t niv_port_id)
bcm_field_qualify_DstNivGport
int bcm_field_qualify_HiGigOffloadEngineDscpNew_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyHiGigOffloadEngineDscpNew qualifier from the field entry.
int bcm_field_tcam_bank_add(int unit, uint32 flags, bcm_field_tcam_bank_info_t *add_info)
Adds the given bank IDs to the given fg_id OR pp_app that are given in add_info struct.
int bcm_field_qualify_TunnelPayloadEtherType_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get match criteria for bcmFieldQualifyTunnelPayloadEtherType qualifier from the field entry.
int bcm_field_qualify_OuterL5PayloadByte3(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on Outer L5 Payload byte 3.
int bcm_field_qualify_TrillIngressRbridge_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get match criteria for TrillIngressRbridge qualifier.
int bcm_field_qualify_MplsLabel1Hit(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for MplsLabel1Hit qualifier.
int bcm_field_stat_all_set32(int unit, int stat_id, uint32 value)
Set 32-bit counter value to all counters.
int bcm_field_qualify_GenericAssociatedChannelLabelValid(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for GenericAssociatedChannelLabelValid qualifier.
int bcm_field_qualify_L2GreProtocolType(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Set match criteria for L2GreProtocolType qualifier.
int bcm_field_qualify_InterfaceClassL2_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyInterfaceClassL2 qualifier from the field entry.
int bcm_field_qualify_TxPortType_get(int unit, bcm_field_entry_t entry, bcm_field_PortType_t *port_type)
Get tx port type field qualification from a field entry.
int bcm_field_qualify_INTProbeMarker1_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyINTProbeMarker1 qualifier for a given field entry.
int bcm_field_qualify_FibreChanRCtl(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyFibreChanRCtl qualifier in the field entry.
bcm_field_layer_type_e
Definition: field.h:40481
int bcm_field_ace_format_add(int unit, uint32 flags, bcm_field_ace_format_info_t *ace_format_info, bcm_field_ace_format_t *ace_format_id)
This function adds new ACE field format to Egress-PMF stage. This format uses an ACE table (PPMC tabl...
int bcm_field_qualify_DstPort(int unit, bcm_field_entry_t entry, bcm_module_t data_modid, bcm_module_t mask_modid, bcm_port_t data_port, bcm_port_t mask_port)
bcm_field_qualify_DstPort
int bcm_field_qualify_IgmpType_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyIgmpType qualifier from the field entry.
enum bcm_field_admit_profile_e bcm_field_admit_profile_t
int bcm_field_qualify_IpFwdPlusOneNextProtocol_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get qualifier IP forward plus one next protocol.
struct bcm_field_stage_slice_info_s bcm_field_stage_slice_info_t
int bcm_field_qualify_EgressClassWlan(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Set match criteria for EgressClassWlan qualifier.
struct bcm_field_oam_stat_action_s bcm_field_oam_stat_action_t
uint32 mask[BCM_FIELD_ACTION_WIDTH_IN_WORDS]
Definition: field.h:50123
int bcm_field_qualify_DstPortSRRoleInterlink_get(int unit, bcm_field_entry_t entry, uint8 *data)
Get match criteria for bcmFieldQualifyDstPortSRRoleInterlink.
int bcm_field_qualify_GpeNetworkId(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for GPE Network ID in the field entry.
int bcm_field_entry_prio_set(int unit, bcm_field_entry_t entry, int prio)
Get/Set the priority for an entry within a group.
int bcm_field_qualify_LoopbackLagFailoverPkt_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for Loopback Lag Failover packet qualifier.
int bcm_field_qualify_FibreChanSrcBindCheck_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyFibreChanSrcBindCheck qualifier from the field entry.
int bcm_field_qualify_InnerIpProtocol_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyInnerIpProtocol qualifier from the field entry.
int bcm_field_qualify_SnoopCopy_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for SnoopCopy qualifier.
void bcm_field_presel_entry_data_info_init(bcm_field_presel_entry_data_t *entry_data)
Initialize the bcm_field_presel_entry_data_t structure.
int bcm_field_qualify_InnerL4Ports_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyInnerL4Ports qualifier from the field entry.
int bcm_field_qualify_OuterL5PayloadByte8(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on Outer L5 Payload byte 8.
int bcm_field_qualify_MplsLabel2Exp_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for MplsLabel2Exp qualifier.
int bcm_field_qualify_FlowtrackerCheck(int unit, bcm_field_entry_t entry, bcm_flowtracker_group_t flow_group_id, uint32 num_checks, bcm_field_flowtrackercheck_t *list_of_check_ids)
To Qualify on the results of Flowtracker checker events in Flow Tracker Module. Note: This qualifier ...
int bcm_field_qualify_MplsLabel4Exp(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on MPLS label4 exp value.
int bcm_field_qualify_MplsLabel5Bos_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyMplsLabel5Bos qualifier from the field entry.
int bcm_field_action_class_get(int unit, bcm_field_entry_t entry, bcm_field_class_info_t *class_info)
Get an action from a field class entry (an entry that is a member of a direct extraction group).
int bcm_field_qualify_PacketTerminatedBytes(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for PacketTerminatedBytes qualifier.
int bcm_field_qualify_DstMultipathUnderlay_get(int unit, bcm_field_entry_t entry, bcm_if_t *data, bcm_if_t *mask)
Get match criteria for ECMP groups with Underlay flag.
int bcm_field_qualify_MplsLabel3Bos_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for MplsLabel3Bos qualifier.
int bcm_field_qualify_SrcNivGport_get(int unit, bcm_field_entry_t entry, bcm_gport_t *niv_port_id)
Get match criteria for bcmFieldQualifySrcNivGport qualifier from the field entry.
int bcm_field_qualify_TunnelTerminated_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyTunnelTerminated qualifier from the field entry.
int bcm_field_qualify_InnerIp6PktHopLimit(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Configure match criteria for bcmFieldQualifyInnerIp6PktHopLimit qualifier for the field entry.
bcm_field_IntHdr_Location_e
Definition: field.h:49214
int bcm_field_qualify_SourceGportBitmap(int unit, bcm_field_entry_t entry, bcm_pbmp_t data, bcm_pbmp_t mask)
To qualify on a port bitmap generated from SVP.
bcm_ethertype_t bcm_port_ethertype_t
Definition: port.h:6675
int bcm_field_qualify_IngressL2InterfaceOpaqueCtrlId1_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyIngressL2InterfaceOpaqueCtrlId1 qualifier from the field entry.
int bcm_field_qualify_HiGigProxy_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyHiGigProxy qualifier from the field entry.
enum bcm_field_ForwardingType_e bcm_field_ForwardingType_t
int bcm_field_qualify_InterfaceClassMplsLookup1_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
To get the qualified inputs on Class identifier derived from MPLS label 1 entry Lookup.
int bcm_field_qualify_InterfaceClassMplsLookup3(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
To qualify on Class identifier derived from MPLS label 3 entry Lookup.
int bcm_field_hints_get(int unit, bcm_field_hintid_t hint_id, bcm_field_hint_t *hint)
Get the complete hint structure from the hint id.
int bcm_field_qualify_GenevePktWithOam_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Retreive OAM over Geneve packet qualification from a field entry.
int bcm_field_qualify_ExternalHit2_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyExternalHit2 qualifier in the field entry.
int bcm_field_qualify_StaggeredValue0_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Set match criteria for bcmFieldQualifyStaggeredValue0_get.
int bcm_field_qualify_Ipv4OptionHdrType_get(int unit, bcm_field_entry_t entry, bcm_field_ip_option_hdr_type_t *type)
API to retrieve IPv4 option header type associated to a given field entry.
int bcm_field_qualify_OamInLifId(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for OamInLifId qualifier.
int bcm_field_qualify_TosClassZero(int unit, bcm_field_entry_t entry, bcm_class_t data, bcm_class_t mask)
Configure match criteria for bcmFieldQualifyTosClassZero qualifier from the field entry.
int bcm_field_qualify_InnerL4SrcPort_get(int unit, bcm_field_entry_t entry, bcm_l4_port_t *data, bcm_l4_port_t *mask)
Get match criteria for bcmFieldQualifyInnerL4SrcPort qualifier from the field entry.
int bcm_field_qualify_StaggeredPreselProfile2_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Set match criteria for bcmFieldQualifyStaggeredPreselProfile2_get.
enum bcm_field_mcast_pkt_reason_e bcm_field_mcast_pkt_reason_t
int bcm_field_qualify_IEEE1588CompensateTimeStamp_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for field_qualify_IEEE1588CompensateTimeStamp_get.
int bcm_field_destination_entry_get(int unit, bcm_field_destination_match_t *match, bcm_field_destination_action_t *action)
Get a field destination entry.
int bcm_field_qualify_SrcVirtualPortValid_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifySrcVirtualPortValid qualifier from the field entry.
int bcm_field_group_presel_get(int unit, bcm_field_group_t group, bcm_field_presel_set_t *presel)
Get the set of preselectors associated with a Field group.
int bcm_field_qualify_BypassSrcMacFilter_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for BypassSrcMacFilter qualifier.
struct bcm_field_ace_entry_info_s bcm_field_ace_entry_info_t
int bcm_field_qualify_HiGigDstMulticastGroupId(int unit, bcm_field_entry_t entry, bcm_multicast_t group, bcm_multicast_t mask)
Set match criteria for bcmFieldQualifyHiGigDstMulticastGroupId qualifier in the field entry.
int bcm_field_qualify_SrcClassL2_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifySrcClassL2 qualifier from the field entry.
int bcm_field_qualify_MimlSrcMac(int unit, bcm_field_entry_t entry, bcm_mac_t data, bcm_mac_t mask)
Set match criteria for bcmFieldQualifyMimlSrcMac qualifier in the field entry.
struct bcm_field_extraction_field_s bcm_field_extraction_field_t
int bcm_field_qualify_HiGigVlan(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Set match criteria for bcmFieldQualifyHiGigVlan qualifier in the field entry.
int bcm_field_qualify_MplsLabel1Ttl(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for MplsLabel1Ttl qualifier.
int bcm_field_qualify_BfdGoodPkt_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Retrieve the match criteria fields for BfdGoodPkt qualifier associated to a given field entry.
int bcm_field_qualify_LoopbackHdrDstType_get(int unit, bcm_field_entry_t entry, bcm_field_DstType_t *lb_hdr_dst_type)
Get packet destinaion type field qualification from a field entry.
uint32 max_value[BCM_FIELD_QUAL_WIDTH_IN_WORDS]
Definition: field.h:39034
int bcm_field_qualify_L3DstMiscClassId_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyL3DstMiscClassId from a field entry.
int bcm_field_presel_create_stage_id(int unit, bcm_field_stage_t stage, bcm_field_presel_t presel_id)
Create a preselection specification using a specific ID for a specific stage.
bcm_field_qualify_t qualifier
Definition: field.h:4871
int bcm_field_qualify_BfdPktVersionOne_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get BFD version one packet qualification from a field entry.
int bcm_field_qualify_LearnInVPort(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for LearnInVPort qualifier.
int bcm_field_qualify_ExternalValue1(int unit, bcm_field_entry_t entry, uint64 data, uint64 mask)
Set match criteria for bcmFieldQualifyExternalValue1 qualifier in the field entry.
int bcm_field_qualify_TosClassZero_get(int unit, bcm_field_entry_t entry, bcm_class_t *data, bcm_class_t *mask)
Get match criteria for bcmFieldQualifyTosClassZero qualifier from the field entry.
int bcm_field_qualify_FlexStateResultA1(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
To qualify on flex state result counter a1 value.
int bcm_field_qualify_ExternalValue5_get(int unit, bcm_field_entry_t entry, uint64 *data, uint64 *mask)
Get match criteria for bcmFieldQualifyExternalValue5 qualifier in the field entry.
int bcm_field_qualify_MirrorOnDropReason(int unit, bcm_field_entry_t entry, bcm_field_mirror_on_drop_reason_t type)
To qualify on packets mirrored due to MMU drop.
int bcm_field_qualify_FibreChanFCtl_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyFibreChanFCtl qualifier from the field entry.
int bcm_field_qualify_DstMimGports_get(int unit, bcm_field_entry_t entry, bcm_gport_t *mim_port_id, bcm_gport_t *mim_port_mask)
Get match criteria for bcmFieldQualifyDstMimGports qualifier from the field entry.
bcm_port_ethertype_t ethertype
Definition: field.h:402
int bcm_field_qualify_MplsLabel1Id_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for MplsLabel1Id qualifier.
int bcm_field_group_mode_get(int unit, bcm_field_group_t group, bcm_field_group_mode_t *mode)
Get the mode of a group.
int bcm_field_qualify_PimBidirDfStatus(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Add to match on PIM Bidirectional designated forwarding bit of the incoming packet qualification to a...
uint8 name[BCM_FIELD_MAX_NAME_LEN]
Definition: field.h:9248
enum bcm_field_redirect_destination_type_e bcm_field_redirect_destination_type_t
int bcm_field_qualify_ReplicantAny(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for ReplicantAny qualifier.
int bcm_field_qualify_IpExtHdr2Protocol_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for IpExtHdr2Protocol qualifier.
int bcm_field_compare_operand_offset_get(int unit, int pair_id, bcm_field_compare_operand_t compare_operand, int *offset)
Gives the offset of a specific compare operand inside the 6-bit compare result.
int bcm_field_qualify_MimVlanPri(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for MimVlanPri qualifier.
int bcm_field_qualify_HiGigGbpSrcId_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
To get the qualified inputs on GBP source ID of the HiGig packet.
int bcm_field_flush_entry_add(int unit, uint32 flags, bcm_field_group_t fg_id, int entry_id, bcm_field_flush_entry_info_t *flush_entry_info)
This function creates, sets and installs to HW a single flush machine entry (rule and action) for a s...
int bcm_field_qualify_LoopBackPacketProcessingPort(int unit, bcm_field_entry_t entry, bcm_gport_t port_id, bcm_gport_t port_mask)
Set match criteria for bcmFieldQualifyLoopBackPacketProcessingPort qualifier in the field entry.
int bcm_field_qualify_GbpDstId_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
To get the qualified inputs on GBP destination ID.
uint16 bcm_vlan_t
Definition: types.h:147
enum bcm_field_PortType_e bcm_field_PortType_t
int bcm_field_destination_flexctr_object_set(int unit, bcm_field_destination_match_t *match, uint32 value)
Set the flex counter object value for a field destination entry.
int bcm_field_qualify_FibreChanVFTValid(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyFibreChanVFTValid qualifier in the field entry.
bcm_field_ingress_policer_pools_e
Definition: field.h:8811
int bcm_field_qualify_TcpClassOne(int unit, bcm_field_entry_t entry, bcm_class_t data, bcm_class_t mask)
Configure match criteria for bcmFieldQualifyTcpClassOne qualifier from the field entry.
int bcm_field_entry_delete(int unit, bcm_field_group_t fg_id, bcm_field_entry_qual_t entry_qual_info[BCM_FIELD_NUMBER_OF_QUALS_PER_GROUP], bcm_field_entry_t entry_handle)
Delete Entry From HW and free all allocated resources.
int bcm_field_qualify_IntHdrType_get(int unit, bcm_field_entry_t entry, bcm_field_IntHdr_Type_t *int_type)
Get match criteria for IntHdrType qualifier.
int bcm_field_group_dump(int unit, bcm_field_group_t group)
Show contents of a field group.
int bcm_field_qualify_L4DstPort(int unit, bcm_field_entry_t entry, bcm_l4_port_t data, bcm_l4_port_t mask)
bcm_field_qualify_L4DstPort
struct bcm_field_range_info_s bcm_field_range_info_t
int bcm_field_qualify_OamEgressMulticastMacHit(int unit, bcm_field_entry_t entry, uint8 data)
Set match criteria for bcmFieldQualifyOamEgressMulticastMacHit qualifier in the field entry.
bcm_field_group_packet_type_t packet_type
Definition: field.h:9257
uint32 bcm_subport_port_group_t
Definition: subport.h:993
int bcm_field_qualify_TrunkHashResult_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for TrunkHashResult qualifier.
int bcm_field_presel_config_create(int unit, bcm_field_presel_config_t *presel_config)
Create a field presel ID with specific attributes.
int bcm_field_qualify_RoceVer1Pkt_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyRoceVer1Pkt qualifier in the field entry.
int bcm_field_qualify_RxTrapCode32_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for RxTrapCode qualifier.
int bcm_field_qualify_IpChecksumOkPkt(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Add to match on IP packet with checksum OK qualification to a field entry.
int bcm_field_qualify_EthernetOamInterfaceClassNiv(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyEthernetOamInterfaceClassNiv.
int bcm_field_qualify_EthernetOamInterfaceClassMpls(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyEthernetOamInterfaceClassMpls.
int bcm_field_qualify_InnerDosAttackEvents(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Configure Match criteria for bcmFieldQualifyInnerDosAttackEvents qualifier for the field entry.
int bcm_field_qualify_SrcVlanGports(int unit, bcm_field_entry_t entry, bcm_gport_t vlan_port_id, bcm_gport_t vlan_port_mask)
bcm_field_qualify_SrcVlanGports
int bcm_cos_queue_t
Definition: types.h:206
int bcm_field_qualify_NativeVSwitchValid(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for NativeVSwitchValid qualifier.
int bcm_field_qualify_InnerL4Info(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
To qualify on inner L4 Information.
int bcm_field_qualify_SrcClassL3_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifySrcClassL3 qualifier from the field entry.
int bcm_field_qualify_OuterVlanActionRange_get(int unit, bcm_field_entry_t entry, bcm_vlan_t *data, bcm_vlan_t *mask)
Get match criteria for OuterVlanActionRange qualifier.
int bcm_field_qualify_IncomingOuterVlanId_get(int unit, bcm_field_entry_t entry, bcm_vlan_t *data, bcm_vlan_t *mask)
To get the qualified inputs on the packet's Incoming Outer VLAN ID.
int bcm_field_qualify_TunnelPayloadDip6(int unit, bcm_field_entry_t entry, bcm_ip6_t data, bcm_ip6_t mask)
Set match criteria for bcmFieldQualifyTunnelPayloadDip6 qualifier in the field entry.
int bcm_field_qualify_HiGigMplsPkt_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyHiGigMplsPkt qualifier from the field entry.
int bcm_field_qualify_IfaHopLimitEqualToZero(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify if IFA metadata header hop limit equals to 0.
bcm_field_flush_entry_action_t entry_action[BCM_FIELD_NUMBER_OF_ACTIONS_PER_GROUP]
Definition: field.h:50175
int bcm_field_qualify_EffectiveTtl(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on effective Ttl Information.
int bcm_field_qualify_HiGigSrcModPortGport(int unit, bcm_field_entry_t entry, bcm_gport_t port_id, bcm_gport_t port_mask)
Set match criteria for bcmFieldQualifyHiGigSrcModPortGport qualifier in the field entry.
int bcm_field_qualify_OutPorts_get(int unit, bcm_field_entry_t entry, bcm_pbmp_t *data, bcm_pbmp_t *mask)
Get match criteria for bcmFieldQualifyOutPorts qualifier from the field entry.
int bcm_field_qualify_ForwardingHeaderOffset(int unit, bcm_field_entry_t entry, bcm_field_data_offset_base_t base_header, uint32 data, uint32 mask)
Set match criteria for bcmFieldQualifyForwardingHeaderOffset qualifier in the field entry.
uint8 hit_clear_cmd
Definition: field.h:50170
bcm_field_action_t action_types[BCM_FIELD_NUMBER_OF_ACTIONS_PER_GROUP]
Definition: field.h:39764
int bcm_field_qualify_DstCompressionClassId(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
bcm_field_qualify_DstCompressionClassId
int bcm_field_qualify_EthernetOamInterfaceClassVlan(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyEthernetOamInterfaceClassVlan.
int bcm_field_qualify_EgressPortQueue(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Qualify on Egress Port Cos Queue value.
int bcm_field_action_config_info_get(int unit, bcm_field_entry_t entry, bcm_field_action_t action, bcm_field_action_params_t *params, bcm_field_action_match_config_t *match_config)
Retrieve the parameters for an action previously added to a field entry.
struct bcm_field_context_param_info_s bcm_field_context_param_info_t
int bcm_field_qualify_OamInLifIdValid(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for OamInLifIdValid qualifier.
int bcm_field_qualify_MplsLabel3Id_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for MplsLabel3Id qualifier.
int bcm_field_qualify_DstGport(int unit, bcm_field_entry_t entry, bcm_gport_t port_id)
Set match criteria for DstGport qualifier.
int bcm_field_group_create_mode(int unit, bcm_field_qset_t qset, int pri, bcm_field_group_mode_t mode, bcm_field_group_t *group)
Create a field group.
int bcm_field_qualify_SrcMplsGport(int unit, bcm_field_entry_t entry, bcm_gport_t mpls_port_id)
bcm_field_qualify_SrcMplsGport
int bcm_field_qualify_OverlayIpv6ExtensionHdrType_get(int unit, bcm_field_entry_t entry, bcm_field_ip_option_hdr_type_t *type)
API to retrieve IPv6 Extension header type associated to a field entry.
bcm_field_flow_timestamp_source_e
Definition: field.h:5940
int bcm_field_qualify_DstIp6Low(int unit, bcm_field_entry_t entry, bcm_ip6_t data, bcm_ip6_t mask)
bcm_field_qualify_DstIp6Low
struct bcm_field_flush_entry_payload_s bcm_field_flush_entry_payload_t
int bcm_field_qualify_SrcWlanGport(int unit, bcm_field_entry_t entry, bcm_gport_t wlan_port_id)
bcm_field_qualify_SrcWlanGport
int bcm_field_qualify_IngressInterfaceClass_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get value for bcmFieldQualifyIngressInterfaceClass qualifier from the field entry.
int bcm_field_qualify_OutVPort32(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
bcm_field_qualify_OutVPort32
int bcm_field_qualify_L2DestValue(int unit, bcm_field_entry_t entry, uint64 data, uint64 mask)
Set match criteria for L2DestValue qualifier.
int bcm_field_qualify_TunnelPayloadL4DstPort_get(int unit, bcm_field_entry_t entry, bcm_l4_port_t *data, bcm_l4_port_t *mask)
Get match criteria for bcmFieldQualifyTunnelPayloadL4DstPort qualifier from the field entry.
int bcm_field_qualify_NetworkTagMulticastPkt(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Add to match on Network tag (VnTag or Etag) multicast packet qualification to a field entry.
int bcm_field_qualify_SrcIp6Class_get(int unit, bcm_field_entry_t entry, bcm_class_t *data, bcm_class_t *mask)
Get match criteria for bcmFieldQualifySrcIp6Class qualifier from the field entry.
int bcm_field_presel_config_get(int unit, bcm_field_presel_t presel_id, bcm_field_presel_config_t *presel_config)
Get name from presel id.
int bcm_field_qualify_EgressMcastPktReason_get(int unit, bcm_field_entry_t entry, bcm_field_mcast_pkt_reason_t *type)
API to retrieve Egress multicast Packet reason associated to a field entry.
int bcm_field_qualify_FibreChanDstIdClassLower_get(int unit, bcm_field_entry_t entry, bcm_class_t *data, bcm_class_t *mask)
Get match criteria for bcmFieldQualifyFibreChanDstIdClassLower qualifier from the field entry.
bcm_field_qualify_t qual_types[BCM_FIELD_NUMBER_OF_QUALS_PER_GROUP]
Definition: field.h:38823
int bcm_field_qualify_SrcIpClassLower_get(int unit, bcm_field_entry_t entry, bcm_class_t *data, bcm_class_t *mask)
Get match criteria for bcmFieldQualifySrcIpClassLower qualifier from the field entry.
int bcm_field_entry_remove(int unit, bcm_field_entry_t entry)
Remove a field entry from the hardware tables.
bcm_field_port_sr_type_e
Definition: field.h:34261
int bcm_field_qualify_HiGigVpReplicationId(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for bcmFieldQualifyHiGigVpReplicationId qualifier in the field entry.
void bcm_field_group_info_t_init(bcm_field_group_info_t *fg_info)
Initialize the bcm_field_group_info_t structure.
int bcm_field_qualify_TcpHeaderSize_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyTcpHeaderSize qualifier from the field entry.
int bcm_field_qualify_TunnelTerminated(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_TunnelTerminated
int bcm_field_qualify_MacSecSecTagEbit(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on the E-Bit of MACSEC SECTAG.
int bcm_field_qualify_L2GreVsid_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for L2GreVsid qualifier.
int bcm_field_qualify_IpInIpPkt_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get to match on IP in IP packet qualification from a field entry.
int bcm_field_presel_group_config_create(int unit, bcm_field_presel_group_config_t *group_config)
Create a field presel group with specific attributes.
int bcm_field_qualify_DevicePortBitmap_get(int unit, bcm_field_entry_t entry, bcm_pbmp_t *data, bcm_pbmp_t *mask)
Get match criteria for DevicePortBitmap qualifier from the field entry.
int bcm_field_qualify_TsnFlowId_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
int bcm_field_qualify_L4Info_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get packet L4 info qualification from a field entry.
int bcm_field_qualify_IcmpType(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on type value of ICMP packet.
int bcm_field_qualify_ExternalHit7_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyExternalHit7 qualifier in the field entry.
int bcm_field_qualify_SrcIp6Low_get(int unit, bcm_field_entry_t entry, bcm_ip6_t *data, bcm_ip6_t *mask)
Get match criteria for bcmFieldQualifySrcIp6Low qualifier from the field entry.
int bcm_field_qualify_IntHdrPresent(int unit, bcm_field_entry_t entry, bcm_field_IntHdr_Location_t int_type)
Set match criteria for IntHdrPresent qualifier.
int bcm_field_ace_format_delete(int unit, bcm_field_ace_format_t ace_format_id)
This function deletes an ACE format, deallocates all relevant resources.
int bcm_field_qualify_VxlanPayloadVlanFormat_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyVxlanPayloadVlanFormat qualifier from the field entry.
int bcm_field_qualify_SubportGroupIds_get(int unit, bcm_field_entry_t entry, uint32 num_groups, bcm_subport_port_group_t *subport_group_id_arr, uint32 *actual_groups)
Get match criteria for bcmFieldQualifySubportGroupIds qualifier from the field entry.
int bcm_field_qualify_MirrorEgressDisabled_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for MirrorEgressDisabled qualifier.
int bcm_field_qualify_InnerBfdPktVersionOne(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Add to match on Inner BFD version packet qualification to a field entry.
int bcm_field_qualify_MplsOamGALLabelOnly(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyMplsOamGALLabelOnly.
int bcm_field_qualify_CapwapPayloadEtherType(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Configure match criteria for bcmFieldQualifyCapwapPayloadEtherType qualifier from the field entry.
int bcm_field_group_port_create_mode(int unit, bcm_port_t port, bcm_field_qset_t qset, int pri, bcm_field_group_mode_t mode, bcm_field_group_t *group)
Create a field group.
int bcm_field_qualify_L2PayLoad_get(int unit, bcm_field_entry_t entry, uint32 length, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyL2PayLoad qualifier from the field entry.
int bcm_field_qualify_ForwardCopy(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for ForwardCopy qualifier.
int bcm_field_qualify_Decap(int unit, bcm_field_entry_t entry, bcm_field_decap_t decap)
bcm_field_qualify_Decap
int bcm_field_qualify_Rtag7AHashUpper_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get match criteria for Rtag7AHashUpper qualifier.
bcm_field_stat_action_e
Definition: field.h:188
int bcm_field_qualify_IpProtocolCommon_get(int unit, bcm_field_entry_t entry, bcm_field_IpProtocolCommon_t *protocol)
Get match criteria for bcmFieldQualifyIpProtocolCommon qualifier from the field entry.
int bcm_field_qualify_DstMulticastGroups(int unit, bcm_field_entry_t entry, bcm_multicast_t group, bcm_multicast_t mask)
Set match criteria for bcmFieldQualifyDstMulticastGroups qualifier in the field entry.
int bcm_field_qualify_L2SrcStatic(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_L2SrcStatic
int bcm_field_qualify_TranslatedOuterVlanId_get(int unit, bcm_field_entry_t entry, bcm_vlan_t *data, bcm_vlan_t *mask)
Get match criteria for bcmFieldQualifyTranslatedOuterVlanId qualifier from the field entry.
bcm_field_egress_port_ctrl_e
Definition: field.h:8369
int bcm_field_qualify_MplsLabel6Bos(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on MPLS label6 bos value.
int bcm_field_qualify_OuterVlan_get(int unit, bcm_field_entry_t entry, bcm_vlan_t *data, bcm_vlan_t *mask)
Get match criteria for bcmFieldQualifyOuterVlan qualifier from the field entry.
int bcm_field_qualify_OuterPriTaggedPkt(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Add to match on outer priority tagged packet qualification to a field entry.
int bcm_field_qualify_MplsOamControlPktType(int unit, bcm_field_entry_t entry, bcm_field_MplsOam_Control_pktType_t data)
Set match criteria for bcmFieldQualifyMplsOamControlPktType.
int bcm_field_qualify_ExternalHit0_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyExternalHit0 qualifier in the field entry.
int bcm_field_qualify_TunnelPayloadOuterVlan(int unit, bcm_field_entry_t entry, bcm_vlan_t data, bcm_vlan_t mask)
Set match criteria for bcmFieldQualifyTunnelPayloadOuterVlan qualifier in the field entry.
int bcm_field_qualify_OamEgressClassSrcMac_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyOamEgressClassSrcMac qualifier from the field entry.
int bcm_field_qualify_RecircleHdrCode(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on RecircleHdrCode.
int bcm_field_qualify_InnerL4SrcPort(int unit, bcm_field_entry_t entry, bcm_l4_port_t data, bcm_l4_port_t mask)
bcm_field_qualify_InnerL4SrcPort
int bcm_field_qualify_CopyToCpuReasonLow(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
API to add copy to cpu reason to a field entry for qualification.
int bcm_field_qualify_EgressClassL3InterfaceTunnel(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Set match criteria for EgressClassL3InterfaceTunnel qualifier.
int bcm_field_qualify_TunnelSubType(int unit, bcm_field_entry_t entry, bcm_field_TunnelSubType_t type)
Add tunnel sub-type field qualification to a field entry.
int bcm_field_qualify_IngressL3InterfaceOpaqueCtrlId_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyIngressL3InterfaceOpaqueCtrlId qualifier from the field entry.
int bcm_field_qualify_DstClassField(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
bcm_field_qualify_DstClassField
uint32 value[BCM_FIELD_ACTION_WIDTH_IN_WORDS]
Definition: field.h:39023
int bcm_field_qualify_FibreChanDstIdClass(int unit, bcm_field_entry_t entry, bcm_class_t data, bcm_class_t mask)
Configure match criteria for bcmFieldQualifyFibreChanDstIdClass qualifier from the field entry.
int bcm_field_qualify_IngressDropMplsOamData(int unit, bcm_field_entry_t entry, bcm_field_oam_drop_mep_type_t mep_type)
Set match criteria for bcmFieldQualifyIngressDropMplsOamData qualifier in the field entry.
int bcm_field_qualify_DstClassL3(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
bcm_field_qualify_DstClassL3
int bcm_field_qualify_InnerDosAttack_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyInnerDosAttack qualifier from the field entry.
int bcm_field_qualify_DstNivGport_get(int unit, bcm_field_entry_t entry, bcm_gport_t *niv_port_id)
Get match criteria for bcmFieldQualifyDstNivGport qualifier from the field entry.
struct bcm_field_context_compare_modes_s bcm_field_context_compare_modes_t
uint32 bcm_field_action_priority_t
Definition: field.h:1401
int bcm_field_qualify_ISid_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for ISid qualifier.
enum bcm_field_forward_context_e bcm_field_forward_context_t
SHR_BITDCL w[_SHR_BITDCLSIZE(bcmFieldHeaderFormatCount)]
Definition: field.h:1388
struct bcm_field_group_tcam_info_s bcm_field_group_tcam_info_t
int bcm_field_qualify_MplsOamClassMplsSwitchLabel_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
Get match criteria for bcmFieldQualifyMplsOamClassMplsSwitchLabel.
int bcm_field_qualify_Svtag_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get value for bcmFieldQualifySvtag qualifier from the field entry.
void bcm_field_extraction_action_t_init(bcm_field_extraction_action_t *action)
Initialize a bcm_field_extraction_action_t.
bcm_field_presel_group_t presel_group
Definition: field.h:46656
int bcm_field_qualify_IngressVPortBridgeDisable(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_IngressVPortBridgeDisable
bcm_flowtracker_check_t flow_check_id
Definition: field.h:9351
bcm_field_entry_t entry_id
Definition: field.h:22267
int bcm_field_qualify_HiGigProxyTunnelType_get(int unit, bcm_field_entry_t entry, bcm_field_higig_proxy_tunnel_type_t *type)
Retrieve HiGig Proxy tunnel type associated to a field entry.
int bcm_field_qualify_SrcWlanGport_get(int unit, bcm_field_entry_t entry, bcm_gport_t *wlan_port_id)
Get match criteria for bcmFieldQualifySrcWlanGport qualifier from the field entry.
int bcm_field_qualify_Llc(int unit, bcm_field_entry_t entry, bcm_field_llc_header_t data, bcm_field_llc_header_t mask)
bcm_field_qualify_Llc
int bcm_field_qualify_VxlanGbpPresent(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on Vxlan GBP Presence flag.
int bcm_field_qualify_Ptch_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for Ptch qualifier.
int bcm_field_qualify_MplsLabel4Id(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
To qualify on MPLS label4 id value.
int bcm_field_qualify_InnerPriTaggedPkt(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Add to match on inner priority tagged packet qualification to a field entry.
int bcm_field_qualify_L5PayloadByte5_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyL5PayloadByte5 qualifier from the field entry.
int bcm_field_qualify_HiGigLoadBalanceID_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyHiGigLoadBalanceID qualifier from the field entry.
int bcm_field_entry_create_id(int unit, bcm_field_group_t group, bcm_field_entry_t entry)
Create a blank field entry.
int tcam_bank_ids[BCM_FIELD_NUMBER_OF_TCAM_BANKS]
Definition: field.h:39698
int bcm_field_qualify_IOAMNameSpaceIdMatch_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
To get the qualified inputs on In-situ OAM header Name Space ID match result.
int bcm_field_qualify_TranslatedOuterVlanPri(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyTranslatedOuterVlanPri qualifier in the field entry.
int bcm_field_qualify_Tos(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
bcm_field_qualify_Tos
int bcm_field_qualify_VxlanGbpPresent_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
To get the qualified inputs on Vxlan GBP Presence.
int bcm_field_qualify_HiGig_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyHiGig qualifier from the field entry.
int bcm_field_qualify_SrcIpClassMsbNibble_get(int unit, bcm_field_entry_t entry, bcm_class_t *data, bcm_class_t *mask)
Get match criteria for bcmFieldQualifySrcIpClassMsbNibble qualifier from the field entry.
int bcm_field_qualify_NshServicePathId(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
API to match on NSH Service Path ID.
bcm_field_IEEE1588Encap_e
Definition: field.h:34313
int bcm_field_stat_set32(int unit, int stat_id, bcm_field_stat_t stat, uint32 value)
Set 32-bit counter value for specific statistic type.
int bcm_field_qualify_MplsTopHeader(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for MPLS TOP Header in the field entry.
int bcm_module_t
Definition: types.h:242
int bcm_field_qualify_TrillIngressRbridgeHit_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for TrillIngressRbridgeHit qualifier.
int bcm_field_qualify_OamHeaderBits32_63(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for OamHeaderBits32_63 qualifier.
bcm_field_group_t fg_id
Definition: field.h:39695
int bcm_field_qualify_MimlSrcMac_get(int unit, bcm_field_entry_t entry, bcm_mac_t *data, bcm_mac_t *mask)
Get match criteria for bcmFieldQualifyMimlSrcMac qualifier from the field entry.
int bcm_field_qualify_DstIpClass(int unit, bcm_field_entry_t entry, bcm_class_t data, bcm_class_t mask)
Configure match criteria for bcmFieldQualifyDstIpClass qualifier from the field entry.
enum bcm_field_FibreChan_e bcm_field_FibreChan_t
int bcm_field_qualify_CapwapPayloadInnerVlanCfi_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyCapwapPayloadInnerVlanCfi_get qualifier from the field entry.
int bcm_field_qualify_IfaGlobalNameSpace(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
To qualify on IFA Global Name Space.
int bcm_field_qualify_ArpSenderIp4(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for bcmFieldQualifyArpSenderIp4 qualifier in the field entry.
Definition: field.h:50181
int bcm_field_qualify_VpnOpaqueCtrlId_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyVpnOpaqueCtrlId qualifier from the field entry.
int bcm_field_qualify_McastPkt(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on multicast packet.
int bcm_field_qualify_MHPriority_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
To get qualified inputs on Module Header Priority.
int bcm_field_qualify_IcmpType_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get value for bcmFieldQualifyIcmpType qualifier from the field entry.
int bcm_field_qualify_SRTagType(int unit, bcm_field_entry_t entry, bcm_field_sr_tag_type_t type)
Set match criteria for bcmFieldQualifySRTagType.
enum bcm_field_group_packet_type_e bcm_field_group_packet_type_t
int bcm_field_context_destroy(int unit, bcm_field_stage_t stage, bcm_field_context_t context_id)
Destroy Context ID, deallocate all relevant resources.
int bcm_field_qualify_EgressDOPTrigger(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for Egress DOP Trigger qualifier.
int bcm_field_qualify_StackingRoute_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for Stacking Route qualifier.
int bcm_field_qualify_L2PayloadFirstEightBytes(int unit, bcm_field_entry_t entry, uint32 data1, uint32 data2, uint32 mask1, uint32 mask2)
Match on first eight bytes of L2 payload.
int bcm_field_qualify_MyStation2Hit(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyMyStation2Hit qualifier in the field entry.
int bcm_field_qualify_ExternalValue4_get(int unit, bcm_field_entry_t entry, uint64 *data, uint64 *mask)
Get match criteria for bcmFieldQualifyExternalValue4 qualifier in the field entry.
int bcm_field_qualify_MplsVcLabelHeader_get(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Get match criteria for MPLS VC Label header.
int bcm_field_qualify_OpaqueObject2_get(int unit, bcm_field_entry_t entry, uint16 *data, uint16 *mask)
To get the qualified inputs on Opaque Object2 which was assigned by Flex modules for example NSH,...
int bcm_field_qualify_StpState(int unit, bcm_field_entry_t entry, uint8 data)
Set match criteria for VLAN STG STP states.
int tcam_bank_ids[BCM_FIELD_NUMBER_OF_TCAM_BANKS]
Definition: field.h:37884
struct bcm_field_llc_header_s bcm_field_llc_header_t
bcm_field_stage_t stage
Definition: field.h:8579
int bcm_field_qualify_L2PayLoad(int unit, bcm_field_entry_t entry, uint32 length, const uint8 *data, const uint8 *mask)
Set match criteria for bcmFieldQualifyL2PayLoad qualifier in the field entry.
int bcm_field_qualify_ExactMatchActionClassId_get(int unit, bcm_field_entry_t entry, int group_pri, uint32 *data, uint32 *mask)
Get match criteria for ExactMatchActionClassId qualifier.
int bcm_field_qualify_IpAddrsNormalized_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for IpAddrsNormalized qualifier.
enum bcm_field_fabric_header_e bcm_field_fabric_header_t
int bcm_field_qualify_InnerDSCP_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyInnerDSCP qualifier from the field entry.
endcode< table >< tr >< th > API</th >< th > Brief</th ></tr >< tr >< td > bcm_tsn_mtu_profile_type_t bcm_tsn_mtu_config_t int *mtu_profile_id</td >< td > Create an MTU profile with the config file and return the assigned profile id</td ></tr >< tr >< td > int bcm_tsn_mtu_config_t *config</td >< td > Set the existing MTU profile with the profile id and config file</td ></tr >< tr >< td > bcm_tsn_mtu_profile_traverse_cb void *user_data</td >< td > Traverse the created MTU profile</td ></tr >< tr >< td > bcm_tsn_ingress_mtu_config_t *config</td >< td > Set up global configuration for ingress including the priority of the following SR flow and TSN flow</td ></tr >< tr >< td > bcm_tsn_stu_profile_type_t bcm_tsn_stu_config_t int *stu_profile_id</td >< td > Create an STU profile with the config file and return the assigned profile id</td ></tr >< tr >< td > int bcm_tsn_stu_config_t *config</td >< td > Set the existing STU profile with the profile id and config file</td ></tr >< tr >< td > bcm_tsn_stu_profile_traverse_cb void *user_data</td >< td > Traverse the created STU profile</td ></tr >< tr >< td > bcm_tsn_ingress_stu_config_t *config</td >< td > Set up global configuration for ingress including the priority of the following VFP</td ></tr >< tr >< td > time aware frame metering policing and service class selections for frames of specific data streams TAF APIs provide the device configuration interface status error handling and profile management to support IEEE802 Qci Callback mechanisms are also provided for notifying the application of TAF events TAF profile managements APIs provide the interface to management the gate state calendars and the corresponding time It describes the mapping relationship between various priority int int *taf_gate_id</td >< td > Create Destroy TAF gate</td ></tr >< tr >< td > bcm_tsn_taf_gate_traverse_cb void *user_data</td >< td > Traverse TAF gate</td ></tr >< tr >< td > int int profile_id</td >< td > Create destroy profile of maximum bytes that pass through the TAF gate</td ></tr >< tr >< td > int int uint64 *max_bytes</td >< td > Set get profile of maximum bytes that pass through the TAF gate</td ></tr >< tr >< td > int *cosq_profile</td >< td > Create destroy TAF Cos mapping profile</td ></tr >< tr >< td > int bcm_cos_t priority
Definition: tsn.dox:2030
int bcm_field_qualify_NatSrcRealmId(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyNatSrcRealmId qualifier in the field entry.
bcm_field_pkt_misc_ctrl_e
Definition: field.h:49307
int bcm_field_qualify_FlowtrackerCollectorCopy(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Qualifies on the event whether initial or sample copied to collector happened by Flowtracker.
int bcm_field_qualify_DstIp6Class(int unit, bcm_field_entry_t entry, bcm_class_t data, bcm_class_t mask)
Configure match criteria for bcmFieldQualifyDstIp6Class qualifier from the field entry.
int bcm_field_qualify_UdpLength(int unit, bcm_field_entry_t entry, uint16 data, uint16 mask)
Set match criteria for UDP Length in the field entry.
int bcm_field_qualify_INTReserved4Bytes(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for bcmFieldQualifyINTReserved4Bytes qualifier for a given field entry.
int bcm_field_qualify_Snap(int unit, bcm_field_entry_t entry, bcm_field_snap_header_t data, bcm_field_snap_header_t mask)
bcm_field_qualify_Snap
int bcm_field_qualify_L2DestSRNodeType_get(int unit, bcm_field_entry_t entry, bcm_field_sr_node_type_t *type)
Get match criteria for bcmFieldQualifyL2DestSRNodeType.
int bcm_field_qualify_CapwapPayloadVlanFormat_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyCapwapPayloadVlanFormat qualifier from the field entry.
int bcm_field_qualify_OamEgressVxltSecondHit(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for bcmFieldQualifyOamEgressVxltSecondHit qualifier in the field entry.
int bcm_field_qualify_PreemptablePacket_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyPreemptablePacket qualifier in the field entry.
int bcm_field_qualify_DosAttackEvents_get(int unit, bcm_field_entry_t entry, uint32 *data, uint32 *mask)
Get match criteria for bcmFieldQualifyDosAttackEvents qualifier from the field entry.
int bcm_field_qualify_TunnelPayloadSip(int unit, bcm_field_entry_t entry, bcm_ip_t data, bcm_ip_t mask)
Set match criteria for bcmFieldQualifyTunnelPayloadSip qualifier in the field entry.
int bcm_field_qualify_L2InterfaceMatch(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
To qualify on L2 Interface match.
int bcm_field_group_delete(int unit, bcm_field_group_t fg_id)
Delete Field Group, deallocate all relevant resources.
int bcm_field_qualify_RoceBthDstQueuePair(int unit, bcm_field_entry_t entry, uint32 data, uint32 mask)
Set match criteria for bcmFieldQualifyRoceBthDstQueuePair qualifier in the field entry.
int bcm_field_qualify_OamUpMep(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for OamUpMep qualifier.
int bcm_field_qualify_ForwardingVlanId_get(int unit, bcm_field_entry_t entry, bcm_vlan_t *data, bcm_vlan_t *mask)
Get match criteria for bcmFieldQualifyForwardingVlanId qualifier from the field entry.
int bcm_field_qualify_FibreChanSrcFpmaCheck_get(int unit, bcm_field_entry_t entry, uint8 *data, uint8 *mask)
Get match criteria for bcmFieldQualifyFibreChanSrcFpmaCheck qualifier from the field entry.
int bcm_field_qualify_CapwapPayloadL4SrcPort_get(int unit, bcm_field_entry_t entry, bcm_l4_port_t *data, bcm_l4_port_t *mask)
Get match criteria for bcmFieldQualifyCapwapPayloadL4SrcPort qualifier from the field entry.
bcm_field_entry_t entry_id
Definition: field.h:9267
int bcm_field_qualify_Dhcp(int unit, bcm_field_entry_t entry, uint8 data, uint8 mask)
Set match criteria for Dhcp qualifier.